设系统中有A、B、C三类资源为10,5,7个,有p0 p1 p2 p3 p4进程,在T0时刻的系统状态如下:Max Allocation Need Available A B C A B C A B C A B C p0 7 5 3 0 1 0 7 4 3 3 3 2 p1 3 2 2 2 0 0 1 2 2 p2 9 0 2 3 0 2 6 0 0 p3 2 2 2 2 1 1 0 1 1 p4 4 3 3 0 0 2 4 3 1   问:(1) T0时刻系统安全吗?如果安全则给出安全序列.    (2)有请求Request1=[1,0,2],能否分配?为什么?    (3)在(2)之后有一个新状态,此时Request0=[0,2,0]能否分配?为什么?

问题描述:

设系统中有A、B、C三类资源为10,5,7个,有p0 p1 p2 p3 p4进程,在T0时刻的系统状态如下:
Max Allocation Need Available
A B C A B C A B C A B C
p0 7 5 3 0 1 0 7 4 3 3 3 2
p1 3 2 2 2 0 0 1 2 2
p2 9 0 2 3 0 2 6 0 0
p3 2 2 2 2 1 1 0 1 1
p4 4 3 3 0 0 2 4 3 1
  问:(1) T0时刻系统安全吗?如果安全则给出安全序列.
    (2)有请求Request1=[1,0,2],能否分配?为什么?
    (3)在(2)之后有一个新状态,此时Request0=[0,2,0]能否分配?为什么?

(1)在t0时刻存在安全序列{p1,p3,p4,p2,p0}故安全 (2)按银行家算法检查: ①request 1(1,0,2)≤need 1(1,2,2) ②request 1(1,0,2)≤available(3,3,2) 所以可以立即分配资源 同(2)可以分配