问题 问答题

一个系统具有150存储单元,在T0时刻系统按下表所示分配给3个进程。

进程 最大需求 已分配
P1 70 25
P2 60 40
P3 60 45
对下列请求应用银行家算法分别分析判定是否安全
(1)第四个进程P4到达,最大需求60个存储单元,当前请求分配25个单元。
(2)第四个进程P4到达,最大需求50个存储单元,当前请求分配35个单元。
如果是安全的,请给出一个可能的安全序列;如果是不安全的,请说明理由。

答案

参考答案:根据题意,在T0时刻,系统剩余的存储单元Available为(150-25-40-45),即40。
(1)P4的当前请求量request4为25,小于它的最大需求量60和Available(40)。故可为它试行分配资源,分配后的新状态如下表所示:

进程 Need Allocation Available
P1 45 25 15
P2 20 40
P3 15 45
P4 35 25
  对上述状态进行安全性检查,此时,能找到一个安全序列<P3,P4,P1,P2>,系统处于安全状态,故可为P4分配资源。
  (2)P4的当前请求量request4为35,分别小于它的最大需求量50和Available(40)。故可为它试行分配资源,分配后的新状态如下表所示:
进程 Need Allocation Available
P1 45 25 5
P2 20 40
PV3 15 45
P4 15 35
对上述状态进行安全性检查,由于此时系统的剩余资源数量Available(5)已无法满足任一进程对资源的需求量,故新状态不安全,系统不能为P4分配上述资源。

单项选择题
判断题