- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
835 会合(Rendezvous).ppt
第五章 死锁与饥饿 死锁与饥饿 死锁: indefinite wait. 可察觉 饥饿: not necessarily in wait state. ? 死锁和饥饿都是由于进程竞争资源而引起的. 5.1 死锁的概念 死锁定义 一组进程中的每一个进程,均无限期地等待此组进程中某个其他进程占有的,因而永远无法得到的资源,这种现象称为进程死锁。 定义死锁时刻: 无限等待发生时; 等待发生前(已注定死锁)。 由定义得到的结论 几个有用的结论: 参与死琐的进程至少有二个; 每个参与死锁的进程均等待资源; 参与死锁的进程中至少有两个进程占有资源; 死锁进程是系统中当前进程集合的一个子集。 5.2 死锁类型 5.2 死锁类型 5.2 死锁类型 5.2 死锁类型 5.2 死锁类型(Cont.) 5.3 死锁的条件 Coffman条件(必要条件) 资源独占(mutual exclusion) 不可抢占(non preemption) 保持申请(hold-while-applying) 循环等待(circular wait) 当每类资源只有一个实例时,充要条件。 破坏上述任意一个条件可以消除死锁。 5.4 死锁的处理 死锁预防(deadlock prevention)-静态 死锁避免(deadlock avoidance)--动态 死锁检测(deadlock detection) 死锁恢复(deadlock recovery) 5.5 资源分配图 5.5 资源分配图 申请:pi申请rj中的一个资源实例,由pi向rj画一条申请边,如可满足,改为分配边。 释放:去掉分配边。 例子(无环路,无死锁) 例子(有环路,有死锁) 例子(有环路,无死锁) 例子(有环路,无死锁) 5.5.2 资源分配图的约简 寻找一个非孤立且没有请求边的节点pi, 若无算法结束 去除pi的所有分配边使其成为一个孤立节点; 寻找所有请求边都可满足的进程pj, 将pj的所有请求边全部改为分配边; 转步骤1 死锁定理 若算法结束时,所有节点均为孤点,则称资源分配图是完全可约简的,否则称为不可完全约简的. 死锁定理: S为死锁状态的充分必要条件是S的资源分配图不可完全约简. 5.6 死锁预防 对进程有关资源的活动加限制,所有进程遵循这种限制,即可保证没有死锁发生。 优点:简单,系统不需要做什么。 缺点:对进程的约束,违反约束仍可能死锁。 预防方法: 预先分配法; 有序分配法。 5.6.1 预先分配法 进程:运行前申请所需全部资源; 系统: 能够满足,全部分配, 否则,一个也不分配。 破坏“hold-and-wait”条件 缺点: 资源利用效率低; 一次提出申请困难。 5.6.2 有序分配法 5.6.2 有序分配法 5.6.2 有序分配法 优点 与预先分配相比,资源利用率提高. 缺点 资源编号困难; 为保持按序申请,某些暂时不用的资源也需提前申请, 牺牲资源利用率. 例子 例子 例子 5.7 死锁避免 银行家算法(Cont.) 银行家算法(Cont.) 银行家算法(Cont.) 资源分配 安全性检测算法 银行家算法例子 银行家算法例子 银行家算法的保守性 银行家算法的保守性 讨论 5.8 死锁的检测 5.8.1 死锁检测算法 Remarks Remarks 令P是所有进程的集合,P’包含于P是所有占有资源的进程集合,则: P死锁?P’死锁。 死锁检测之后是恢复,只考虑P’中的进程。 死锁检测不考虑P-P’中的进程,缩小了检测范围,降低了系统开销。 死锁例子 5.8.2 死锁检测时刻 5.9 死锁的恢复 5.10 鸵鸟算法 视而不见 Pro: 工程师观点(考虑死锁发生的频率,危害,处理代价) 死锁发生频率其它故障引起的系统瘫痪的频率 死锁处理constant overhead 危害 Cont: 数学家观点 必须处理,无论代价如何 5.12 饥饿与活锁 饥饿(starvation):当等待时间给进程推进和响应带来明显影响时,称发生了进程饥饿.饥饿到一定程度的进程所赋予的使命即使完成也不再具有实际意义时称该进程被饿死(starved to death). 没有时间上界的等待 排队等待 忙式等待 忙式等待条件下发生的饥饿,称为活锁(live lock). 死锁与饥饿 饥饿 vs 死锁 死锁进程处于等待状态,忙式等待的进程并非处于等待状态, 但却可能被饿死; 死锁进程等待永远不会释放的资源, 饿死进程等待可能被释放,但却不会分给自己的资源,其等待时间没有上界; 死锁一定发生了循环等待,饿死不然; 死锁至少涉及两个进程, 饿死进程可能只有一个. 例1. 过河问题 5.14 简单组合资源死锁的静态分析 死锁分析例子 死锁分析例子 死锁分析例子 5.15 同种组合资源死锁的必要条件 例子
您可能关注的文档
- 2016年9月二级MS第1至21套上机题目及解析(无选择题).docx
- 2016年《专业技术人员创新与创业能力建设》8月6日最新试题和答案一(92分).docx
- 2016年一级建造师法规模拟试卷.doc
- 2016年世界500强企业排名.docx
- 2016年中考英语一轮复习第20讲(人教版九年级Units11~12).ppt
- 2016年安徽省配套政策兑现补助申请须知.doc
- 2016年山东省临沂市专业技术人员培训计划考试试题及答案.doc
- 2016年度全国注册土木工程师(港口与航道工程)执业资格考试专业考试主要工程技术标准及文件清单.doc
- 2016年新人教版六年级下册数学第4课时 利率.ppt
- 2016年春九年级英语Unit 11 Sad movies make me cry课件Section A 2.ppt
最近下载
- 快手初级认证内部考试题 .pdf VIP
- 电网技术改造工程预算编制与计算规定(2020年版).pdf VIP
- 防止沉迷网络游戏主题班会PPT课件.pptx VIP
- 发展和改革委员会理论学习中心组集体学习暨2025年度民主生活会会前学习研讨会上的讲话范文.docx VIP
- 新华三集团数字化转型实践.pptx
- 2022年宜宾学院计算机科学与技术专业《数据结构与算法》科目期末试卷.pdf VIP
- 医疗卫生机构护士聘用证明.docx VIP
- 2025年消防设施操作员(消防设备基础知识)通关必刷题库(1000题)含答案 .pdf VIP
- 综合性期刊集群的建设与服务能力提升策略.docx VIP
- 中国期刊集群建设与融合发展的路径研究综述.docx VIP
原创力文档


文档评论(0)