操作系统-死锁
死锁
是指多个进程在运行过程中因争夺资源而造成的一种僵局,当进程处于这种状态时,若无外力作用,它们都将无法再向前推进.
产生死锁的必要条件
- 互斥条件
- 请求和保持条件
- 不可剥夺条件
- 环路等待条件
某系统中有3个并发进程,都需要同类资源4个,试问该系统不会发生死锁的最少资源数是(10).
处理死锁的基本方法
- 预防死锁(破坏四个必要条件中的一个或多个)
- 避免死锁(防止系统进入不安全状态,如银行家算法)
- 检测死锁(允许发生死锁,检测出死锁发生后,采用适当的策略,从系统中将已发生的死锁清除掉)
- 解除死锁(与检测死锁配套,常用的实施办法是撤销或挂起一些进程,以便回收一些资源,使得处于阻塞状态的等待进程获取资源后转为就绪状态,得以继续运行)