操作系统02_4
死锁的概念
知识总览
.
什么是死锁
.
.
死锁、饥饿、死循环的区别
.
管理者:操作系统。
被管理者:程序员,不是操作系统。
死锁产生的必要条件
.
什么时候会发生死锁
.
死锁的处理策略
.
review
.
死锁的处理策略—预防死锁
知识总览
.
破坏互斥条件
.
破坏不剥夺条件
.
破坏请求和保持条件
.
破坏循环等待条件
.
缺点 2:
假设 P3 进程所需的 5 号资源为打印机,7 号资源为扫描仪,但是实际上 P3 需要先使用扫描仪,再使用打印机,但由于编号递增的规则,P3 进程又必须先申请占有 5 号资源打印机(暂时用不到,空闲很长的时间),等扫描仪工作完成后,再使用打印机。造成打印机这个资源浪费。
review
.
死锁的处理策略—避免死锁
知识总览
.
什么是安全序列
.
![image-20221122211613394](https://img2022.cnblogs.com/blog/2883139/202211/2883139-20221122215928227-2029740368.png)
.
安全序列、不安全状态、死锁的联系
.
银行家算法
.
具体分析
![image-20221122213052485](https://img2022.cnblogs.com/blog/2883139/202211/2883139-20221122215932908-2094747980.png)
快速手算
![image-20221122213149661](https://img2022.cnblogs.com/blog/2883139/202211/2883139-20221122215933485-875260296.png)
不安全状态
.
具体算法说明
![image-20221122213542260](https://img2022.cnblogs.com/blog/2883139/202211/2883139-20221122215934899-2049537548.png)
.
review
![image-20221122213920968](https://img2022.cnblogs.com/blog/2883139/202211/2883139-20221122215936358-354916022.png)
死锁的处理策略—检测和解除
知识总览
.
死锁的检测
.
能消除所有的边
.
不能消除所有的边
.
检测死锁的算法
.
死锁的解除
.
review
.