- 1、本文档共36页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
操作系统原理第三章.ppt
Operating System * * 3.5.4 多个资源的银行家算法 把银行家算法推广到多个资源 A B C D E 3 0 1 1 0 0 1 1 1 0 1 1 0 0 1 0 0 1 0 0 A B C D E 1 0 3 0 2 1 1 1 0 1 0 0 1 2 0 0 1 0 1 0 进 程 磁 带 机 绘 图 仪 打 印 机 CD R OM 进 程 磁 带 机 绘 图 仪 打 印 机 CD R OM 已分配资源 仍需要的资源 图. 多个资源的银行家算法 E=(6 3 4 2) C=(5 3 2 2) A=(1 0 2 0) E=C+A Operating System * * 多个资源的银行家算法描述 查找第二个矩阵是否存在一行,其没有被满足的资源数均小于或者等于A.如果不存在这样的行,那么系统将会死锁.因为任何进程都无法运行结束. 若找到这样的行,那么可以假设它可以获得所需的资源并运行结束,并将其资源加到向量A上. 重复以上两步.直到所有的进程都标记终止,则其初始状态是安全的.或者,直到死锁发生,此刻的状态是不安全的. 分析 在步骤1中,若同时存在多个进程符合条件,无论选择哪个进程运行,都不会存在不安全因素,因为可用资源会增多或者不变. 图中若B再请求一台打印机,则可满足它(D可结束,然后是A或E结束,其余相继结束). 如果B申请了打印机,并且得到分配,如果E试图请求最后一台打印机,并且得到了满足,则引起死锁. Operating System * * 3.6 死锁预防 Havender, 1968. 破坏产生死锁的4个条件之一,则死锁不会产生. 破坏互斥条件 spooling技术 避免分配那些不是绝对必须的资源,使得尽可能少的进程真正访问起源 破坏占有和抢占条件 进程执行前先计算所需的资源,然后采用银行家算法避免死锁的产生; 当进程请求资源时,先暂时释放已占有的资源,然后再一次性申请所有需要使用的资源 Operating System * * 破坏不可抢占条件 改为抢占. 破坏循环等待条件 保证每个进程在任何时刻只能占用一个资源,如果需要申请另外一个资源,必须首先释放第一个资源. 对资源进行统一编号,按照如下规则进行资源请求:进程可以在任何时刻提出请求,但是所请求的资源必须按照资源编号的顺序提出. 条件 处理方式 一切都是用假脱机技术 在开始就请求所有资源 抢占资源 对资源按数值编号 互斥 占有和等待 不可抢占 循环等待 图. 死锁预防方法汇总 Operating System * * 3.7 其他问题 3.7.1 两阶段加锁 常用于数据库系统的更新 3.7.2 非资源死锁 一般指共享变量的互斥访问造成的死锁. 3.7.3 饥饿 不同的死锁避免机制可能导致一些进程长时间得不到执行,形成’饥饿’- 无限期被阻塞.通常采用FCFS方式解决,或者动态优先级方式解决. Operating System * * 3.8 相关研究及本章总结 相关热点研究 分布式系统的死锁检测方法 本章总结 Operating System Operating System *?2007 Operating System * 操作系统原理 蔡青松 caiqs@th.btbu.edu.cn 计算机学院 Operating System * * 第三章 死锁 计算机系统中,独占资源的访问往往由操作系统协调为排他性地访问,从而保护资源并协调多个进程的并发执行. 通过协调资源的排他使用和协调多个进程的并发执行(如前所述的避免竞争条件,进程并发互斥,IPC)并不能解决进程动态性所导致的另外一种相互等待的阻塞状态-死锁 通常情况下,全局性的资源共享与互斥使用、进程间通信和并发都可能导致相互等待的情况。 Operating System * * 第三章 死锁 3.1 资源 3.2 死锁概述 3.3 鸵鸟算法 3.4 死锁检测和恢复 3.5 死锁避免 3.6 死锁预防 3.7 相关的其它问题 小节 Operating System * * 3.1 资源 3.1.1 可抢占资源和不可抢占资源 资源可以划分为可抢占和不可抢占两类 可抢占资源 可以对拥有该资源的进程中抢占而不会产生任何副作用,这类资源称为可抢占资源。 不可抢占资源 指在不引起相关的计算或者处理失败的情况下,无法把它从占有的进程抢占的一类资源。 一般而言,进程间的死锁问题多由不可抢占资源的排他性使用引起。对于可抢占资源,若存在潜在的死锁,可以通过进程间的重新资源调配来解决. Operating System * * 进程使用资源(不可抢占)所需要的事件可以表述为 请求资源 使用资源 释放资源 不同许同的资源请求、使用及释放过程有所不同。 Operating System
您可能关注的文档
最近下载
- “红旗杯”竞赛总题库-4班组长计划管理能力考试题库(附答案).docx VIP
- 物业管理实务练习题物业的承接查验(三).pdf VIP
- 食品配送行业货物运输质量保障措施.docx VIP
- 2025入党积极分子发展对象培训考试试卷题库(含答案).docx VIP
- 地下室金刚砂地坪施工方案.docx VIP
- 2025年公安局警务辅助人员招聘考试笔试试题(附答案).docx VIP
- “红旗杯”竞赛总题库-2班组长成本绩效管理能力考试题库(附答案).docx VIP
- 轨道交通收益权质押价值评估研究--以xx市地铁x号线为例.pdf VIP
- 5. 国威人工智能产业学院建设方案V1.5.pdf VIP
- 中国AIGC应用全景图谱报告.pptx VIP
文档评论(0)