发布网友 发布时间:2022-04-20 07:40
共3个回答
热心网友 时间:2023-07-10 02:35
其实这种题就是操作系统里面有关死锁的问题:运用银行家算法和安全算法
就可以啦
1.
分配 需要 剩余
P1 3 0 1 1 1 1 0 0
P2 0 1 0 0 0 1 1 2
P3 1 1 1 0 3 1 0 0
P4 1 1 0 1 0 0 1 0
P5 0 0 0 0 2 1 1 0
现在剩余 1 0 2 0 我们就在这个五个进程中找满足: 需要资源<=剩余资源
只有P4进程满足,把资源分给P4进程,让其运行完成,P4进程结束后释放
资源,则剩余资源=1 0 2 0 + 1 1 0 1= 2 1 2 1.
接下来用:需要资源<=剩余资源 ,可以找到P1满足(第二种情况P5也满足)
依次类推,则可以找到一个安全序列:P4 P1 P5 P3 P2(这里的安全序列有
很多中情况)
2.
当P2请求一个(0 0 1 0)资源时:请求资源(0 0 1 0)< 剩余资源(1 0 2 0)
请求资源(0 0 1 0)< 需要资源,所以系统可以分配 但还要用安全算法进行
检查是否会该时刻系统是否安全,即用(1)题中的步骤检查,
这时分配图如下:
分配 需要 剩余
P1 3 0 1 1 1 1 0 0
P2 (0 1 1 0) (0 1 0 2)
P3 1 1 1 0 3 1 0 0
P4 1 1 0 1 0 0 1 0
P5 0 0 0 0 2 1 1 0
括号中为变化部分,剩余资源为 1 0 1 0 运用满足条件:需要资源<=剩余资源
根据上述步骤可以找到一个安全序列:P4 P1 P5 P3 P2 (安全序列不唯一)
所以P2发出的请求 系统可以满足
3.
这个小问就不用说了吧 都是一样的
热心网友 时间:2023-07-10 02:35
太专业了,看样子帮不了你!
热心网友 时间:2023-07-10 02:36
把题发到我邮箱里 最好扫描一下原题
25wangjian@163.com