设系统中有3种类型的资源A、B、C和5个进程P0、P1、P2、P3、P4,A资源的数量为10,B资源的数量为5,C资源的数量为7。在T0时刻系统状态如下表所示。系统采用银行家算法实施死锁避免策略。 (1)T0时刻是否为安全状态?若是,请给出安全序列。 (

admin2016-06-30  49

问题 设系统中有3种类型的资源A、B、C和5个进程P0、P1、P2、P3、P4,A资源的数量为10,B资源的数量为5,C资源的数量为7。在T0时刻系统状态如下表所示。系统采用银行家算法实施死锁避免策略。

(1)T0时刻是否为安全状态?若是,请给出安全序列。
(2)在T0时刻若进程P1发出资源请求Request(1,0,2),是否能够实施资源分配?
(3)在②的基础上P4发出资源请求Request(3,3,0),是否能够实施资源分配?
(4)在③的基础上P0发出资源请求Request(0,2,0),是否能够实施资源分配?

选项

答案(1)利用银行家算法对T0时刻的资源分配情况进行分析,可得此时刻的安全性分析情况: [*] 可知,在T0时刻存在着一个安全序列{P1、P3、P4、P2、P0},故系统是安全的。 (2)P1请求资源Request(1,0,2),系统按银行家算法进行检查: Request(1,0,2)≤Need(1,2,2) Request(1,0,2)≤Available(3,3,2) 系统试探分配,修改相应的向量,形成的资源变化情况如下表所示: [*] 在利用安全性算法检查此时系统是否安全,如下表所示: [*] True由安全性算法检查可知,可以找到一个安全序列{P1、P3、P4、P0、P2}。因此,系统是安全的,可以立即把P1所申请的资源分配给它。 (3)P4发出资源请求Request(3,0,0),系统按照银行家算法进行检查: Request(3,3,0)≤Need(4,3,1) Request(3,3,0)Available(2,3,0),所以让P4等待。 (4)P0发出资源请求Request(0,2,0),系统按照银行家算法进行检查:Request(0,2,0)≤Need(7,4,3) Request(0,2,0)≤Available(2,3,0) 系统试探分配,修改相应的向量,形成的资源变化情况如下表所示: [*] 进行安全性检查,可用资源Available(2,1,0)已不能满足任何进程的需要,故系统进入不安全状态,此时系统不分配资源。

解析
转载请注明原文地址:https://kaotiyun.com/show/ubAx777K
本试题收录于: 操作系统题库理工类分类
0

最新回复(0)