某系统有R1、R2和R3三种资源,在T0时刻P1、P2、P3和P4四个进程对资源的占用和需求情况如下表所示,此时系统的可用资源向量为(2,1,2)。 (1)系统是否处于安全状态?如安全,请给出一个安全序列。 (2)如果此时P

admin2018-08-12  26

问题 某系统有R1、R2和R3三种资源,在T0时刻P1、P2、P3和P4四个进程对资源的占用和需求情况如下表所示,此时系统的可用资源向量为(2,1,2)。
      
    (1)系统是否处于安全状态?如安全,请给出一个安全序列。
    (2)如果此时P1和P2均发出资源请求向量Request(1,0,1),为了保证系统的安全性,应该如何分配资源给这两个进程?说明你所采用的策略的原因。
    (3)如果(2)中两个请求立即得到满足,系统此刻是否处于死锁状态?

选项

答案本题考查采用银行家算法避免死锁。 (1)利用安全性算法对T0时刻的资源分配情况进行分析,可得到如下表所示的安全性检测情况。可以看出,此时存在一个安全序列{P2,P3,P4,P1},故该系统是安全的。 [*] (2)若此时Pl发出资源请求Request1(1,0,1),按银行家算法进行检查: Request1(1,O,1)≤Needl(2,2,2) Request1(1,0,1)≤Available(2,1,2) 试分配并修改相应的数据结构,由此形成的资源分配情况如下表所示。 [*] (3)如果(2)中两个请求立即得到满足,此刻系统并没有立即进入死锁状态,因为这时所有进程没有提出新的资源申请,全部进程均没有因资源请求没有得到满足而进入阻塞状态。只有当进程提出资源请求,且全部进程都进入阻塞状态时,系统才处于死锁状态。

解析
转载请注明原文地址:https://kaotiyun.com/show/frRi777K
0

最新回复(0)