问答题 考虑某个系统在表2-25时刻的状态。

表2-25 系统资源状态表

Allocation
Mac
Available
A
B
C
D
A
B
C
D
A
B
C
D
P0
0
0
1
2
0
0
1
2
1
5
2
0
P1
1
0
0
0
1
7
5
0
P2
1
3
5
4
2
3
5
6
P3
0
0
1
4
0
6
5
6

使用银行家算法回答下面的问题:

问答题 Need矩阵是怎样的?
【正确答案】[*]
【答案解析】
问答题 系统是否处于安全状态?如安全,请给出一个安全序列。
【正确答案】Work矢量初始化值=Available(1,5,2,0)
系统安全性[分析]
[*]
因为存在一个安全序列<P0、P2、P1、P3>,所以系统处于安全状态。
【答案解析】
问答题 如果从进程P1发来一个请求(0,4,2,0),这个请求能否立刻被满足?如安全,请给出一个安全序列。
【正确答案】Request1(0,4,2,0)<Need1(0,7,5,0)
Request1(0,4,2,0)<Available(1,5,2,0)
假设先试着满足进程P1的这个请求,则Available变为(1,1,0,0)
系统状态变化见下表:
[*]
再对系统进行安全性分析,见下表:
[*]
因为存在一个安全序列<P0、P2、P1、P3>,所以系统仍处于安全状态。所以进程P1的这个请求应该马上被满足。
【答案解析】