- 1、本文档共77页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构的小结 Available[j]:目前资源 j可供使用的数量 Max[i,j]:进程i需要资源 j 的最大数量 Allocation[i,j]:进程i当前已获得资源 j的数量 Need[i,j]:进程i还需要多少资源 j,才能执行完 * 所以,Need[i,j]= Max[i,j]- Allocation[i,j] * 银行家算法 设向量Requesti[1...m] 如果Requesti[j]=K,表示进程Pi需要K个资源 j Pi申请资源时,OS如下进行检查: 如果Requesti[j]≤ Need[i,j],执行下一步;否则认为出错,因为它所需要的资源数已超过它所宣布的最大值。 如果Requesti[j]≤Available[j],执行下一步;否则, 表示尚无足够资源,Pi须等待。 * OS假设把资源分配给进程Pi,并作如下修改: Available[j]:= Available[j]- Requesti[j]; Allocation[i,j]:= Allocation[i,j]+ Requesti[j]; Need[i,j]:= Need[i,j]- Requesti[j]; 执行安全性算法,检查此次资源分配后,系统是否处于安全状态。若安全,才真正把资源分配给进程Pi;否则,本次假设的分配作废,恢复原来的资源分配状态,让进程Pi等待。 安全性算法 作用 查看是否存在一个安全序列 算法 设置两个数组向量 ① 工作向量Work[1..m] OS可提供给进程继续运行所需的各种资源数量 安全性算法初始时,Work := Available; Finish[1..n] 系统是否有足够的资源分配给进程,使之运行完成。 初始时 Finish[i]:=false; 当有足够资源分配给进程 i 时, 便令 Finish[i]:=true * 从所有的进程中找到一个能满足下述条件的进程: Finish[i]=false; Need[i,j]≤ Work[j]; 若找到, 执行步骤3; 否则,执行步骤4 执行以下两步修改 Finish[i]∶= true; Work[j]∶= Work[j]+ Allocation[i,j]; 因为进程Pi获得所需的资源后,便可畅通无阻的执行完,并释放出已分配给它的资源,从而使系统里的可用资源增多。 如果所有进程的Finish[i]= true都满足,则表示系统处于安全状态;否则,系统处于不安全状态 * 银行家算法举例 五个进程{P0, P1, P2, P3, P4}和三类资源{A, B, C},各种资源的数量分别为10、5、7,在T0时刻的资源分配情况如图所示 * * T0时刻的安全性: P1请求资源 P1发出请求向量Request1(1,0,2),系统按银行家算法进行检查 Request1(1, 0, 2)≤Need1(1, 2, 2) Request1(1, 0, 2)≤Available1 (3, 3, 2) 系统先假定可为P1分配资源,并修改Available, Allocation1和Need1向量,由此形成的资源变化情况如图 中的圆括号所示 再利用安全性算法检查此时系统是否安全 * * P1申请资源时的安全性检查 存在安全序列:(P1,P3,P4,P0,P2) P4请求资源 P4发出请求向量Request4(3,3,0),系统按银行家算法进行检查 Request4(3, 3, 0)≤Need4(4, 3, 1); Request4(3, 3, 0) Available(2, 3, 0),让P4等待 P0请求资源 P0发出请求向量Requst0(0,2,0),系统按银行家算法进行检查 Request0(0, 2, 0)≤Need0(7, 4, 3); Request0(0, 2, 0)≤Available(2, 3, 0); 系统先假定可为P0分配资源,并修改有关数据,如下图所示 * * 为P0分配资源后的有关资源数据 已不能满足任何进程的需要,所以无法进入安全状态, 此时不能分配资源 3.7 死锁的检测与解除 死锁的检测 资源分配图 * 每类资源有多个时的情况 死锁定理 基本思想 通过简化资源分配图, 检测死锁 基本方法 不断寻找既不阻塞又不独立的进程结点Pi 顺利时,Pi可获得所需资源,并执行完 相当于,消去连接Pi的各条边,使之成为孤立结点 死锁定理 S为死锁状态的充分必要条件是,当且仅当S状态的资源分配图是不可完全简化的 * 死锁的解除 两种方法 剥夺资源 从其他进程剥夺足够资源给死锁的进程 撤消进程(有两种方法) 撤销全部死锁进程 按某顺序逐个撤销,直到有足够资源为止 策略 撤销进程数目最小 撤销进程所付代价最小,等等 *
您可能关注的文档
- MAPGIS批量裁减分幅图MAPGIS批量裁减分幅图.doc
- Marketing Strategy2(张佳佳)Marketing Strategy2(张佳佳).doc
- Main revisionMain revision.ppt
- mathematica数学实验报告 实验二mathematica数学实验报告 实验二.doc
- MATALB8.5基础与实践教程(第2版)第5章 线性代数运算MATALB8.5基础与实践教程(第2版)第5章 线性代数运算.ppt
- Maple 大作业Maple 大作业.doc
- Mail礼仪及注意事项Mail礼仪及注意事项.ppt
- MATLAB GUI数据传递总结MATLAB GUI数据传递总结.doc
- MATLAB与差分方程MATLAB与差分方程.ppt
- matlab中正则表达式matlab中正则表达式.ppt
- 2018年普通高等学校招生全国统一模拟考试理综-化学试题扫描版含答案.doc
- Unit6SunshineforallStudyskills课件-牛津译林版八年级英语下册.pptx
- Unit3After-schoolactivitiesLesson2Avisittoafarm课件冀教版(2024)英语七年级下册.pptx
- 第13课《最后一次讲演》课件-统编版语文八年级下册.pptx
- Unit2BesportybehealthyReading课件-牛津译林版(2020)高中英语.pptx
- Unit2Differentfamilies第三课时(课件)-人教PEP版(2024)英语三年级上册.pptx
- 服务业的区位选择教学课件-湘教版高中地理必修二.pptx
- 城镇化进程及其影响课件高中地理湘教版(2019).pptx
- 国家海洋权益与海洋发展战略课件高一地理中图版必修2.pptx
- 工程变更管理细则.doc
最近下载
- 一种定向声波驱鸟器.pdf VIP
- 光伏智慧管理平台方案.docx VIP
- 公共危机与应急管理(原理与案例)王宏伟-第七章 应急沟通.pptx VIP
- 火电工程建筑工程交付使用前质量监督检查记录.pdf VIP
- 2023-2024学年高中下学期主题班会 世界读书日 读书,是门槛最低的高贵 课件 .pptx VIP
- 化解小学生争吵主题班会PPT课件.pptx VIP
- 儿童保健学试题库.pdf VIP
- 完整版老旧小区雨污分流改造工程施工组织设计方案(最全).doc
- 2023年广东省深圳市光明区中考二模物理试题(含答案解析).docx
- 四川省成都市石室中学2024届高二下学期期中半期考试物理试题(含答案及解析).docx
文档评论(0)