问题 单项选择题

假设系统处于安全状态,目前系统剩余资源数量为2,哪个进程序列不是安全序列

进程 已占资源数 最大需求数
P1 1 2
P2 4 7
P3 3 5
P4 5 7

A.P1,P2,P3,P4

B.P2,P3,P4,P1

C.P3,P1,P2,P4

D.P4,P3,P2,P1

答案

参考答案:B

解析: 如果存在一个由系统中的所有进程构成的安全序列,则说系统处于安全状态。安全序列是指在一个进程序列<P1,P2,…,Pn>中,对每一个进程Pi(1≤i≤n),它以后尚需要的资源数量不超过系统中当前剩余资源量与所有进程Pj(j<i)当前占有资源的数量。按上述方法计算,对于进程P2,已占资源数为4,最大需求数为7,所以还需要资源数为3,现在系统剩余资源为2,若其他进程的资源不可抢占,则P2进程就无法执行。其他几个序列中没有这个问题。所以正确答案为B。

选择题
多项选择题