某系统中有四种互斥资源R1、R2、R3和R4,可用资源数分别为3、5、6和8。假设在T0时刻有P1、P2、P3和P4四个进程,并且这些进程对资源的最大需求量和已分配资源数如下表所示,那么在T0时刻系统中R1、R2、R3和R4的剩余资源数分别为(1)。如果从TO时刻开始进程按(2)顺序逐个调度执行,那么系统状态是安全的。
空白(2)处应选择()
A.P1→P2→P4→P3
B.P2→P1→P4→P3
C.P3→P2→P1→P4
D.P4→P2→P3→P1
参考答案:C
解析:安全状态,是指系统能按照某种顺序如来为每个进程分配其所需资源,直至最大需求,使每个进程都可顺利完成。先看第(24)题,首先求T0时刻剩下的资源数,有R1=3-(1+0+1+1)=0R2=5-(1+1+1+1)=1R3=6-(2+2+1+1)=0R4=8-(4+2+0+1)=1可知在T0时刻系统剩余的可用资源数分别为0、1、0和1,且系统不再分配资源R1和R3,所以不能一开始就运行需要分配R1和R3资源的进程。由题表可知,进程P2的运行还需要分配R1资源,进程P1和P4的运行都需要分配R3资源,所以可以立即排除选项A、B和D,迅速判断出第1小题的答案为C。现在看第2小题的选项C这个安全序列P3→P2→P1→P4,根据这个顺序,系统先运行P3进程,P3进程结束后释放它占用的资源,然后给进程P2分配P2需要的资源,以此类推,可知这个序列是安全序列。