- 1、本文档共55页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第6章_进程管理与作业管理2分析
死锁概述 操作系统中的死锁基于如下假定: 任意一个进程要求资源的最大数量不超过系统能提供的最大量; 如果一个进程在执行中提出的资源要求能够得到满足,那么它一定能在有限时间内结束; 一个资源在任何时刻最多只为一个进程所占有; 一个进程申请资源,只在资源得不到满足时才处于等待状态; 一个进程结束时释放它所占有的全部资源; 系统具有有限个进程和资源。 死锁 在多道程序系统中,若干个进程彼此相互等待对方拥有且不会释放的资源,从而形成各进程都想得到资源而又都得不到资源,因而不能继续向前推进的僵局状态,就叫死锁。 例1:进程推进顺序不当产生死锁 设系统有打印机、读卡机各一台,被进程P和Q共享。两个进程并发执行,按下列次序请求和释放资源: 进程P 进程Q 请求读卡机 请求打印机 请求打印机 请求读卡机 释放读卡机 释放读卡机 释放打印机 释放打印机 例2 PV操作使用不当产生死锁 进程Q1 进程Q2 ……… ……… P(S1); P(s2); P(s2); P(s1); 使用r1和r2; 使用r1和r2 V(S1); V(s2); V(S2); V(S1); 资源的概念 资源的分类 a、可再用资源/消耗性资源 可再用资源:可供进程重复使用 如:硬件资源、软件资源 消耗性资源:由某个进程所产生,只为另一个进程使用一次,或经短暂时间后便不再使用的资源。 如:时钟中断、同步信号、消息等 b、共享/独享资源:例如CPU、主存/打印机 c、可剥夺/不可剥夺资源 产生死锁的必要条件 互斥:对于独占资源,每个资源每次只能给一个进程使用,进程申请到了资源后占为己有,则排斥其他进程享受该资源 非剥夺:正在使用的资源不可剥夺,进程获得的资源尚未使用完毕之前,只能由占有者自己释放,不能被其他进程强行占用 占有且等待:进程因未分配到新的资源而受阻,但对已占有的资源又“死抱住不放” 循环等待:存在进程的循环等待链,前一进程占有的资源是后一进程所需求的资源,结果就形成了循环等待的僵持局面 说明:发生死锁,则四个条件一定同时成立;破坏其中一个,死锁就可以阻止。 资源分配图 约定Pi→Rj为请求边,表示进程Pi申请资源类Rj中的一个资源得不到满足而处于等待Rj类资源的状态,该有向边从进程开始指到方框的边缘,表示进程Pi申请Rj类中的一个资源。 Rj→Pi为分配边,表示Rj类中的一个资源已被进程Pi占用,由于已把一个具体的资源分给了进程Pi,故该有向边从方框内的某个圆点出发指向进程。 资源分配图的一个例子 资源分配图的另一个例子 资源分配图死锁状态 (1)如果进程-资源分配图中无环路,则此时系统没有发生死锁。 (2)如果进程-资源分配图中有环路,且每个资源类中仅有一个资源,则系统中发生了死锁,此时,环路是系统发生死锁的充要条件,环路中的进程便为死锁进程。 (3)如果进程-资源分配图中有环路,且涉及的资源类中有多个资源,则环路的存在只是产生死锁的必要条件而不是充分条件。 处理死锁的基本方法 死锁的预防 死锁的避免 死锁的检测 死锁的解除(*) 死锁的预防 死锁预防策略是试图设计一种系统,在这样的系统中排除发生死锁的可能性。 可以把死锁预防方法看作两类 间接的死锁预防方法:即防止前三个必要条件中任何一个的发生 直接的死锁预防方法:即防止循环等待的发生 死锁的预防(1) 破坏互斥条件 使资源可同时访问而不是互斥使用,是个简单的办法,磁盘可用这种办法管理,但有许多资源往往是不能同时访问,所以这种做法许多场合行不通。 所以一般来说,4个条件中的互斥条件不可能禁止。 如果访问资源要求互斥,操作系统必须支持。某些资源,如文件,可能允许多个读访问,但只允许互斥的写访问。即使在这种情况下,如果有多个进程要求写权限,也可能发生死锁。 死锁的预防(2) 剥夺式分配 采用剥夺式调度方法可破坏第二个条件,但只适用于对主存资源和处理器资源的分配; 如果占有某些资源的一个进程,其进一步的资源请求被拒绝,则该进程必须释放它最初的资源; 如果一个进程请求当前被另一个进程占有的一个资源,操作系统可以剥夺第二个进程,要求它释放资源; 只有当应用于资源的状态可以很容易地保存并在以后恢复的情况下 (像处理器一样) ,这种方法才是实用的 死锁的预防(3) 按序分配 采用资源顺序使用法,破坏环路条件; 循环等待条件可以通过定义资源类型线性顺序来预防。如果一个进程已经分配到了R类型资源,它接下来请求的资源只能是那些排在R类型之
您可能关注的文档
- 第6章-中断系统分析.ppt
- 第6章-文件系统分析.ppt
- 四年级复习要点分析.doc
- 第6章APACHE服务分析.ppt
- 四年级作文辅导分析.ppt
- 第6章android组件之间的通信分析.ppt
- 第6章JSP中的文件操作分析.ppt
- 四年级小学语文阅读题及答案1-40分析.doc
- 四年级平行四边形课件分析.ppt
- 第6强化力学实验分析.ppt
- 场地脚手架工程施工方案(3篇).docx
- 2024年浙江省丽水市松阳县玉岩镇招聘社区工作者真题及参考答案详解一套.docx
- 2024年河南省郑州市惠济区古荥镇招聘社区工作者真题及答案详解一套.docx
- 2024年浙江省杭州市淳安县文昌镇招聘社区工作者真题及完整答案详解1套.docx
- 2024年浙江省台州市三门县小雄镇招聘社区工作者真题带答案详解.docx
- 2024年浙江省宁波市余姚市河姆渡镇招聘社区工作者真题及完整答案详解1套.docx
- 2024年浙江省丽水市景宁畲族自治县雁溪乡招聘社区工作者真题及答案详解一套.docx
- 2024年浙江省杭州市临安市板桥乡招聘社区工作者真题及答案详解一套.docx
- 2024年湖北省宜昌市点军区土城乡招聘社区工作者真题及答案详解一套.docx
- 2024年浙江省台州市路桥区桐屿街道招聘社区工作者真题附答案详解.docx
最近下载
- ansys结构声振耦合解决方案.pptx VIP
- ANSYS系统仿真与数字孪生解决方案.pptx VIP
- 第17课 电脑动画 教案 人教版 美术 五年级上册.docx VIP
- 湖北省黄冈市2025年八年级上学期1月期末英语试题(含答案).docx VIP
- 娱乐先锋II_高级KTV系统.pdf VIP
- 汽车软件简介演示.pptx VIP
- 水处理大法聚二甲基二烯丙基氯化铵在给水除藻中的作用应用的探讨.doc VIP
- 2026龙飞平面图形推理基础理论➕百大图形3.0版本.pdf VIP
- 连云港“高质发展、后发先至”-全面建设连云港小康社会继续教育题库及.pdf VIP
- 水污染控制工程第11章.ppt VIP
文档评论(0)