操作系统并发:死锁和饥饿
1
第6章 并发:死锁和饥饿
主要内容
6.1 死锁原理
6.2 死锁预防
6.3 死锁避免
6.4 死锁检测
6.5 一种综合的死锁策略
6.6 哲学家就餐问题
6.7 UNIX的并发机制
6.8 Linux内核并发机制(略)
6.9 Solaris线程同步原语(略)
6.10 Windows 7并发机制(略)
2
6.1 死锁原理
死锁:一组相互竞争系统资源或进行通信的进程间的永久阻塞。
死锁问题没有一种有效的通用解决方案。
所有死锁都涉及两个或多个进程之间对资源需求的冲突。
3
死锁的图示
4
联合进程图
进程P,Q,资源A,B
进程P 进程Q
… …
获得A 获得B
… …
获得B 获得A
… …
释放A 释放B
… …
释放B 释放A
5
死锁的例子
6
无死锁的例子
7
6.1.1 可重用资源
一次只能供一个进程安全地使用,并且不会由于使用而耗尽的资源。
处理器、I/O通道、内存、外存、设备、文件、数据库、信号量等。
8
可重用资源死锁的例子
9
6.1.2 可消耗资源
可以被创建和销毁的资源。
中断、信号、消息、I/O缓冲区中的信息等。
可消耗资源死锁的例子
10
6.1.3 资源分配图
11
资源分配图
12
6.1.4 死锁的条件
互斥
一次只有一个进程可以使用一个资源。
占有且等待
当一个进程等待其他进程时,继续占有已经分配的资源。
不可抢占
不能强行抢占进程已占有的资源。
循环等待
存在一个封闭的进程链,使得每个进程至少占有此链中下一个进程所需要的一个资源。
13
处理死锁的方法
死锁预防
死锁避免
死锁检测与恢复
14
6.2 死锁预防
试图设计一种系统来排除发生死锁的可能性。
间接的死锁预防方法
预防前三个条件
直接的死锁预防方法
预防第四个条件
15
1、互斥
该条件不可能被禁止
2、占有且等待
可要求进程一次性地请求所有需要的资源,并且阻塞进程直到所有请求都同时满足。
存在的问题:
一个进程可能被阻塞很长时间,已等待满足其所有的资源请求。
分配给一个进程的资源可能有相当长的一段时间不会被使用。
一个进程可能事先并不知道它所需要的全部资源。
16
3、不可抢占
如果占有某些资源的进程进一步申请资源时被拒绝,则该进程必须释放它最初占有的资源。
如果进程A请求当前被进程B占有的一个资源,则操作系统可以抢占进程B,要求它释放资源。
4、循环等待
定义资源类型的线性顺序。如果一个进程已经分配到了R类型的资源,那么它接下来请求的资源只能是那些排在R类型之后的资源类型。
存在的问题:
会导致进程执行速度变慢;
可能在没有必要的情况下拒绝资源访问。
17
6.3 死锁避免
如果一个进程的请求会导致死锁,则不启动此进程;
如果一个进程增加的资源请求会导致死锁,则不允许此分配。
18
6.3.1 进程启动拒绝—数据结构
系统有n个进程和m种不同类型的资源:
Resource=R=(R1,R2,…,Rm)
系统中每种资源的总量
Available=V=(V1,V2,…Vm)
未分配给进程的每种资源的总量
C11 C12 … C1m
C21 C22 … C2m
Claim=C= … … … …
Cn1 Cn2 … Cnm
Cij表示进程i对资源j的需求
19
数据结构
A11 A12 … A1m
A21 A22 … A2m
Allocation=A= … … … …
An1 An2 … Anm
Aij表示当前分配给进程i的资源j
20
关系式
1. Rj=Vj+∑Aij ,对所有j
2. Cij ≤ Ri ,对所有i,j
3. Aij ≤ Cij ,对所有i,j
i=1
n
21
死锁避免策略
仅当 Rj≥C(n+1)j +∑ Cij (对所有j)时,才启动一个新进程Pn+1。
即只有所有当前进程的最大请求量加上新的进程请求可以满足时,才会启动该进程。
i=1
n
22
6.3.2 资源分配拒绝
主要思想:动态的检测资源分配状态以确保循环等待条件不可能成立。
银行家算法
银行家拥有一笔周转资金
客户要求分期贷款,如果客户能够得到各期贷款,就一定能够归还贷款,否则就一定不能归还贷款
银行家应谨慎的贷款,防止出现坏帐
用银行家算法避免死锁
操作系统(银行家)
操作系统管理的资源(周转资金)
进
您可能关注的文档
最近下载
- 2024—2025学年度安徽省合肥市第六中学高一下学期期末考试历史试题(含答案).docx VIP
- 4.国内高空观测数据BUFR编码格式(V1.0).doc VIP
- 兽药企业安全生产培训PPT.ppt VIP
- 输变电工程建设标准强制性条文10248-2016_部分2.pdf VIP
- 2025年高考(北京卷)物理真题及答案.doc VIP
- 2026人教版五年级上册语文期末考试3套试卷(打印版含答案解析).pdf
- 承插型盘扣式钢管模板支架施工验收记录表.doc VIP
- 长郡初三期末物理试卷及答案.doc VIP
- 湖北省武汉市江汉区2024-2025学年八年级上学期1月期末道德与法治试卷.docx VIP
- 黄冈达标卷数学2年级下(单元测+期中+期末).docx VIP
原创力文档

文档评论(0)