3.5死锁的基本概念

死锁的基本概念

死锁的概念

1. 定义:一组进程中每个进程都无限等待被该组进程中另一进程所占有的资源,而处于的一种僵持局面,若无外力作用,它们都无法向前推进,这种现象称为进程死锁,这组进程就称为死锁进程。
2. 举例:
在这里插入图片描述

死锁的四个必要条件

  • 互斥条件
  • 不可剥夺条件
  • 请求保持条件
  • 环路条件

处理死锁的方法

  1. 预防死锁
    通过设置某些限定条件,去破坏死锁的四个必要条件中的一个或多个,来防止死锁。(由于所施加的条件太严格,往往会导致系统资源利用率和吞吐量降低)
  2. 避免死锁
    不事先采取限制去破坏产生死锁的条件,而是在资源动态分配过程中,用某种方法去防止系统进入不安全状态,从而避免死锁。
  3. 检测死锁
    事先不采取如何限制,也不检查系统是否进入不安全区,允许死锁发生;但可通过检查机构及时检测出死锁的发生,并精确确定与死锁有关的进程和资源,然后采取适当措施,将系统中已发生的死锁清除掉。
  4. 解除死锁
    与检测死锁相配套,用于将进程从死锁状态解脱出来。常用方法式撤销或挂起一些进程。以回收一些资源,再将它们分配给处于阻塞状态的进程,使之转为就绪状态。

猜你喜欢

转载自blog.csdn.net/DJTTT/article/details/110307052
今日推荐