操作系统复习——死锁(穿插在各个知识点中)

本文详细探讨了操作系统中的死锁问题,包括死锁的基本概念、产生的原因及四个必要条件。介绍了死锁的预防、避免、检测与恢复等处理办法,如破坏必要条件、银行家算法、资源分配图简化和剥夺资源等策略。最后,文章总结了死锁处理的局限性,并引发了对UNIX内核及多线程中死锁处理的思考。
摘要由CSDN通过智能技术生成

死锁的基本概念

定义(Deadlock):多个进程因竞争资源而造成的一种僵局,若无外力作用,这些进程将永远无法推进
产生的原因

  1. 竞争资源
  2. 进程推进顺序不合理

产生的必要条件

  1. 互斥条件Mutual exclusion
  2. 占有并等待Hold and wait
  3. 不可抢占No preemption
  4. 环路等待Circular wait

资源分配图
在这里插入图片描述
死锁的处理办法

  1. 设计无死锁的系统——系统运行前或运行中
    ① 死锁预防——破坏死锁存在的四个必要条件
    ② 死锁避免——保证系统随时处于安全状态
  2. 允许系统出现死锁,提供处理方法排除_系统或进程运行后
    ③ 死锁检测——通过化简资源分配图
    ④ 死锁恢复——通过破坏死锁的必要条件
  3. 忽视死锁

死锁的处理=

死锁的预防

基本思想:破坏死锁发生的四个必要条件之一
四个必要条件:

  1. 互斥条件Mutual exclusion
  2. 占有并等待Hold and wait
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值