- 1、本文档共52页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第六章 并发:死锁和饥饿
死锁
一组相互竞争系统资源或进行通信的进程间的
“永久”阻塞
涉及两个或多个进程之间对资源需求的冲突
无有效解决方法
常见:交通死锁
可重用资源+可消耗资源
可重用资源
一次只能供一个进程安全地使用,不会耗尽
可剥夺资源:包括CPU、虚存、磁盘
不可剥夺资源:打印机、文件、数据库和信号量
竞争不可剥夺资源,就会发生死锁
两进程竞争可重用资源的例子
p p q q p q
0 1 0 1 2 2
策略:给系统设计施加关于资源请求顺序的约束
可重用资源死锁的另一个例子:内存请求
可分配空间200kb
第二个请求时发生死锁
解决:使用虚拟存储消除死锁可能性
P1 P2
. . .
. . .
Request 80 Kbytes; Request 70 Kbytes;
. . .
. . .
Request 60 Kbytes; Request 80 Kbytes;
可消耗资源
可以被创建(生产)和销毁(消耗)的资源
一个无阻塞的生产进程可以创建任意数目的这类资源
例子:中断、信号、消息和I/O缓冲区中的信息
接收信息被阻塞(receive 阻塞),出现死锁-难以发现
接收受阻,死锁出现
P1 P2
. . . . . .
Receive(P2); Receive(P1);
. . . . . .
Send(P2, M1); Send(P1, M2);
一个有向图表示,描述资源和进程状态
进程:P,圆形表示
某类资源:R,方形表示
P1
具体资源:原点表示 R1 R2
请求:Pi Rj P2
分配:Rj Pi
互斥
一次只有一个进程可以使用一个资源,其他进程不能访问
必
要 占有且等待
条
件 当一个进程等待其他进程时,继续占有已有资源
不可抢占
不能强行抢占进程已占有资源
充 循环等待
分
前三个条件的潜在结果
条
件 存在一个封闭的进程链,使每个进程至少占有此链中下一个进
程所需要的一个资源
预防死锁:消除某一个条件的出现
避免死锁:不破坏条件,允
您可能关注的文档
最近下载
- 7《短歌行》《归园田居(其一)》 对比联读 教学设计 2024-2025学年统编版高中语文必修上册.docx
- 沪教版 七年级(上)数学 秋季课程 第4讲 整式的乘法(解析版).doc VIP
- 2024年萍乡卫生职业学院单招职业适应性测试模拟试题及答案解析.docx
- 生物 生命活动的主要承担者——蛋白质 专题练习.doc VIP
- 《摩登时代》-公开课件(设计).ppt VIP
- A7-10-制冷系统部件的检修.pdf
- Unit 2 I think that mooncakes are delicious! Section A(Grammar Focus-4c) 课件-九上英语.pptx VIP
- 2024年萍乡卫生职业学院单招职业技能测试题库及答案解析.docx VIP
- 父母借用子女名义购房协议书.doc
- 团体操花球串词.doc
文档评论(0)