最著名的的死锁避免算法。
系统处于安全状态时,一定不会发生死锁;
系统处于不安全状态时,不一定会发生死锁;
例题:
某系统有n台互斥使用的同类设备,3个并发进程需要3,4,5台设备,可确保系统不发生死锁的设备数n最小为 (10)
解:
进程1(3台):申请到2台,无法工作;
进程2(4台):申请到3台,无法工作;
进程3(5台):申请到4台,无法工作;
申请总数:2+3+4=9,此时若只有9台,3个进程持续申请且申请不到,造成死锁。
所以还必须要加多1台,当有10台时,可以打破死锁。