第三章作业、处理机调度分解.ppt

 (2) 从进程集合中找到一个能满足下述条件的进程:   ① Finish[i]=false;   ② Need[i,j]≤Work[j];若找到,执行步骤(3),否则,执行步骤(4)。   (3) 当进程Pi获得资源后,可顺利执行,直至完成,并释放出分配给它的资源,故应执行: Work[j]:= Work[j]+Allocation[i,j]; Finish[i]:=true; go to step 2;   (4) 如果所有进程的Finish[i]=true都满足,则表示系统处于安全状态;否则,系统处于不安全状态。 银行家算法之例   假定系统中有五个进程{P0,P1,P2,P3,P4}和三类资源{A,B,C},各种资源的数量分别为10、5、7,在T0时刻的资源分配情况如图3-16所示。 图3-16 T0时刻的资源分配表   (1) T0时刻的安全性:利用安全性算法对T0时刻的资源分配情况进行分析(见图 3-17所示)可知,在T0时刻存在着一个安全序列{P1,P3,P4,P2,P0},故系统是安全的。  图3-17 T0时刻的安全序列  (2) ?P1请求资源:P1发出请求向量Request1(1,0,2),系统按银行家算法进行检查:   ① Request1(1,0,2)≤Need1(1,2,2)   ② Request1(1,0,2)≤Available1(3

文档评论(0)

1亿VIP精品文档

相关文档