银行家算法,死锁检测算法实践

银行家算法实践

假设资源集合R = {A,B,C},资源类A有10个实例,B有5个实例,C有7个实例,系统某一时刻存在5个进程,且此时系统状态如下:
《银行家算法,死锁检测算法实践》

运行安全性检测算法:
《银行家算法,死锁检测算法实践》
《银行家算法,死锁检测算法实践》
《银行家算法,死锁检测算法实践》
《银行家算法,死锁检测算法实践》
《银行家算法,死锁检测算法实践》

假设P2有资源请求Request[2] = {1, 0, 2},能否被满足?
《银行家算法,死锁检测算法实践》

运行安全性检测算法(自己动动手吧),得到安全序列

死锁检测算法实践

假设资源 R = { A , B , C }, A=7,B=3,C=6,进程 P = { p0 , p1 , p2 , p3 , p4 },某时刻状态:
《银行家算法,死锁检测算法实践》

运行死锁检测算法:
《银行家算法,死锁检测算法实践》
《银行家算法,死锁检测算法实践》
《银行家算法,死锁检测算法实践》
得到安全序列:< p0,p2,p3,p1,p4 >,且所有进程均执行结束。

假设P2有资源请求:Request[2]=(0, 0,1)。
经死锁检测算法检测后检查出死锁,并且知道参与死锁的进程为{P1,P2,P3,P4}。

    原文作者:银行家问题
    原文地址: https://blog.csdn.net/ai977313677/article/details/72780117
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞