- 死锁:多个进程在运行过程中因争夺资源而造成的一种僵局,当进程处于这种僵持状态时,若无外力作用,他们都无法再向前推进。
- 产生死锁的原因(两点):
竞争资源:可剥夺和非剥夺性资源;竞争非剥夺性资源;竞争临时性资源
- 可剥夺性资源:某类进程获得这类资源后,该进程可以再被其他进程或系统剥夺,比如CPU、主存
- 不可剥夺性资源:当系统把这类资源分配给某进程后,再不能强行收回,只能在进程用完后自行释放,如磁带、打印机
进程间推进顺序非法
- 产生死锁的必要条件:
互斥条件
请求和保持条件
不剥夺条件
环路等待条件
- 处理死锁的基本方法:
预防死锁
避免死锁
检测死锁
解除死锁