操作系统:进程与线程(三)死锁

一战成硕

    • 2.4 死锁
      • 2.4.1 死锁的概念
      • 2.4.2 死锁的预防
      • 2.4.3 死锁避免
      • 2.4.4 死锁的检测和接触

2.4 死锁

2.4.1 死锁的概念

  1. 死锁的定义
    多个进程因竞争资源而造成的一种僵局(互相等待)
    死锁发生条件:互斥、不可剥夺、请求和保持、循环等待
    操作系统:进程与线程(三)死锁_第1张图片

  2. 死锁产生的原因
    (1)系统资源的竞争
    (2)进程推进顺序非法
    (3)死锁产生的必要条件

  3. 死锁的处理策略
    1)预防死锁
    2)避免死锁
    3)死锁的检测及解除
    操作系统:进程与线程(三)死锁_第2张图片

操作系统:进程与线程(三)死锁_第3张图片

2.4.2 死锁的预防

防止死锁发生只需破坏四个必要条件之一

  1. 破坏互斥条件
  2. 破坏不剥夺条件
  3. 破坏请求并保持条件
  4. 破坏循环等待条件
    操作系统:进程与线程(三)死锁_第4张图片

2.4.3 死锁避免

  1. 系统安全状态
    操作系统:进程与线程(三)死锁_第5张图片
  2. 银行家算法
    操作系统:进程与线程(三)死锁_第6张图片
    操作系统:进程与线程(三)死锁_第7张图片
    操作系统:进程与线程(三)死锁_第8张图片

2.4.4 死锁的检测和接触

  1. 资源分配图
    操作系统:进程与线程(三)死锁_第9张图片
  2. 死锁定理
    操作系统:进程与线程(三)死锁_第10张图片
    操作系统:进程与线程(三)死锁_第11张图片
  3. 死锁解除
    操作系统:进程与线程(三)死锁_第12张图片
    操作系统:进程与线程(三)死锁_第13张图片

你可能感兴趣的:(操作系统,操作系统,同步与互斥,进程与线程,死锁)