操作系统的死锁与处理策略
一、死锁的概念
死锁是指:在并发环境下,进程因为资源竞争所造成的相互等待对方所占有的资源,导致各进程都阻塞的现象。
二、 死锁产生的必要条件*
对进程不可剥夺的资源分配不当时会发生死锁,死锁的发生一定是满足以下四个条件:
- 互斥:对互斥资源的争抢。
- 不可抢占:进程在未使用完所占有的资源前,不能被其他进程抢占,只能主动释放。
- 请求和保持:进程已经持有了至少一个资源,并提出新资源请求。
- 循环等待:存在一种资源循环等待环,链中的每个进程所获的的资源同时被下个进程请求。
三、 死锁的处理策略*
死锁的处理策略主要有:预防死锁、避免死锁和死锁检测与解除
3.1 预防死锁
预防死锁的思想是通过破坏死锁产生的四个必要条件中的某一个或某几个来避免死锁的发生。