您好,欢迎访问三七文档
1.用银行家算法考虑下列系统状态:进程分配矩阵最大需求矩阵资源总数向量A301141116342B01000212C11104210D11011111E00002110问:(1)系统是否安全?(应说明理由)(2)若进程B请求(0,0,1,0),可否立即分配?请分析说明。(3)此后进程E也请求(0,0,1,0),可否分配给它?请分析说明。解:(1)由已知条件可得Need和Avaiable矩阵如下:进程分配矩阵尚需矩阵(Need)可用资源数向量(Avaiable)A301111001020B01000112C11103100D11010010E00002110利用银行家算法对此时刻的资源分配情况进行分析如下表:进程WorkNeedAllocationWork+AllocationFinishD1020001011012121trueA2121110030115132trueB5132011201005232trueC5232310011106342trueE6342211000006342true从上述分析可知,存在一个安全序列D,A,B,C,E,故当前系统是安全的。(2)若进程B请求(0,0,1,0),试分配并修改相应的数据结构,则系统状态变为:进程分配矩阵尚需矩阵(Need)可用资源数向量(Avaiable)A301111001010B01100102C11103100D11010010E00002110利用银行家算法对此时刻的资源分配情况进行分析如下表:进程WorkNeedAllocationWork+AllocationFinishD1010001011012111trueA2111110030115122trueB5122010201105232trueC5232310011106342trueE6342211000006342true从上述分析可知,存在安全序列D,A,B,C,E,故系统仍是安全的,因此可以立即分配。(3)此后进程E也请求(0,0,1,0),则系统状态变为:进程分配矩阵尚需矩阵(Need)可用资源数向量(Avaiable)A301111001000B01100102C11103100D11010010E00102100此时系统剩余资源(1,0,0,0)已不能满足任何进程的需求,即已找不到一个安全序列,系统状态将变为不安全,故不能分配给E。2.某系统有A、B、C、D这4类资源供5个进程共享,进程对资源的需求和分配情况如下表所示。现在系统中A、B、C、D类资源分别还剩1、5、2、0个,请按银行家算法回答下列问题:进程已占资源最大需求数ABCDABCDP100120012P210001750P313542356P406320652P5001406561)现在系统是否处于安全状态?为什么?2)如果现在进程P2提出需要(0,4,2,0)个资源的请求,系统能否满足它的请求?为什么?(1)由已知条件可得Need和Avaidble矩阵如下进程分配矩阵尚需矩阵可用资源数向量P1001200001520P210000750P313541002P406320020P500140642利用银行家算法对此时刻的资源分配情况分析如下表:进程WorkNeedAllocationWork+AllocationFinishP11520000000121532trueP415320020063211164trueP2111640750100021164trueP32116410021354314118trueP5314118064200143141212true从上述分析可知,存在一个安全序列P1,P4,P2,P3,P5,故当前系统是安全的(2)若进程P2请求(0,0,1,0),试分配并修改相应的数据结构,则系统状态变为:进程分配矩阵尚需矩阵可用资源数向量P1001200001100P214200330P313541002P406320020P500140642利用银行家算法对此时刻的资源分配情况分析如下表:进程WorkNeedAllocationWork+AllocationFinishP11100000000121112trueP31112100213542466trueP22466033014203886trueP4388600200632314118trueP5314118064200143141212true从上述分析可知,系统能满足它的请求。
三七文档所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
本文标题:用银行家算法考虑下
链接地址:https://www.777doc.com/doc-1776762 .html