Avoid deadlocks, banker algorithms
银行家算法是一种最有代表性的避免死锁的一种算法,在避免死锁的方法中允许进程动态的申请资源。
本设计应用银行家算法验证进程安全性检查及分配资源,设计资源利用效率算法对安全序列排序。目的是通过编写和调试一个系统动态分配资源的简单模拟程序,观察死锁产生的条件,并采用适当的算法,有效地防止和避免死锁
用C++写的银行家算法问题,利用文档输入初始值,例子遵循西安电子科技大学出版社操作系统汤小丹
银行家算法设计五个进程{P0,P1,P2,P3,P4}共享三类资源{A,B,C}的系统,{A,B,C}的资源数量分别为10,5,7。进程可动态地申请资源和释放资源,系统按各进程的申请动态地分配资源。
无需修改就可运行,可在此基础上作优化,修改得完美一些,但如果要求不是很高的话完全够用了。
Java writing banker algorithm
Banker algorithm Java source code
经典算法java实现部分代码//系统拥有的初始资源数publicstaticintAVAILABLE[]={10,5,7};//系统已给每个进程分配的资源数publicstaticintALLOCAT
C书写银行家算法关于操作系统中死锁避免演示