- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机软件技术基础之操作系统处理器管理A
* * 资源分配与调度 资源管理概述: 资源、资源管理、资源管理程序 资源管理目的: 1、保证资源的高利用率; 2、在“合理”时间内使所有顾客有获得所需资源的机会; 3、对不可共享的资源实施互斥使用; 4、防止由资源分配不当而引起的死锁。 * * 资源管理概述 资源管理的任务: 1、资源管理的描述--数据结构 2、确定资源的分配原则和调度原则 3、执行资源分配(实施) 4、存取控制和安全保护 * * 死锁:概念 在这两个进程并发执行时,当PA进程占有R1、PB进程占用R2时,PA要求R2,由于PB已占R2有而得不到,PA进程只有等待;PB申请R1,由于PA已占有R1,而得不到,PB进程只有等待,就出现了死等的情况。 * * 例1:有两个进程PA和PB,它们在运行的过程中要共享使用两个独占设备R1和R2。设SR1:表示设备R1可用,初值为1;SR2表示设备R2可用,两个进程并发执行的程序如下: * * 死锁简单的定义: 死锁就是两个或两个以上的进程等候着一个永远不会发生的事件时所取的一种系统状态。 死锁的定义: 两个或两个以上并发进程,如果每个进程持有某种资源,而又等待着别的进程释放它或它们现在保持着的资源,否则就不能向前推进。此时,每个进程都占用了一定的资源,但又都不能向前推进。这种现象称为死锁。 * * 死锁的起因 * * 产生死锁的四个必要条件: 1、互斥条件 2、不可剥夺条件 3、部分分配 4、环路条件 * * 系统状态分析 一组确定的进程集合,能以竞争的方式运行,记作:p={p1,p2,…,pi,…,pn} 一组不同类型的资源集合,每个资源都只有一个访问入口,记作:r={r1,r2, …, ri, …, rm} 同类资源 系统状态是由进程对资源的请求、获得或释放而改变的,所以必须说明每个时刻进程对资源的请求和占有情况。 资源分配矩阵d(t) 资源请求矩阵a(t) 系统状态合理的条件 * * 死锁的预防 预先分配一个进程要用的所有资源是防止死锁的一种安全而简单的方法,但设备的使用效率太低。其缺点也是明显的: 1、一个用户(进程)在程序运行之前艰难提出将要使用的全部设备; 2、设备(资源)的浪费太大,有些资源在进程运行过程中可能只有很少的时间才用到,有的甚至不会用到,例如,一个分支语句。 * * 死锁的避免 为了提高设备的利用率,应采用动态的设备分配方法,但应设法避免发生死锁,若存在发生死锁的可能性,则拒绝分配。 预防死锁: 死锁避免: * * 一、有序资源分配法 这种算法资源按某种规则系统中的所有资源统一编号(例如打印机为1、磁带机为2、磁盘为3、等等),申请时必须以上升的次序。 系统要求申请进程: 1、对它所必须使用的而且属于同一类的所有资源,必须一次申请完; 2、在申请不同类资源时,必须按各类设备的编号依次申请。 * * 例如:进程PA,使用资源的顺序是R1,R2; 进程PB,使用资源的顺序是R2,R1; 若采用动态分配有可能形成环路条件,造成死锁。 采用有序资源分配法:R1的编号为1,R2的编号为2; PA:申请次序应是:R1,R2 PB:申请次序应是:R1,R2 这样就破坏了环路条件,避免了死锁的发生。 * * 二、银行家算法 避免死锁算法中最有代表性的算法是Dijkstra E.W 于1968年提出的银行家算法: 该算法需要检查申请者对资源的最大需求量,如果系统现存的各类资源可以满足申请者的请求,就满足申请者的请求。 这样申请者就可很快完成其计算,然后释放它占用的资源,从而保证了系统中的所有进程都能完成,所以可避免死锁的发生。 * * 银行家算法中使用的数据结构如下: 可利用资源Available 最大需求矩阵Max 分配矩阵Allocation 需求矩阵Need 上述三个矩阵之间的关系: Need(i,j)=Max (i,j) - Allocation (i,j) * * 例子:假定系统有10个资源(为了说明问题的简单,不管它是什么资源),目前分配的情况如上表: 此时,系统中只剩下2个资源,这时就要考察能满足哪个进程,不能满足P和R的最大要求,能满足Q,于是将剩下的2个资源分配给Q,Q就能完成,然后释放所占用的6个资源。 可满足P,也可满足R,这时不论分给谁都能保证完成。 银行家算法如下: * * 资源分配图由结点和边组成。结点有二类,一类是进程结点,用园圈表示;另一类是资源结点,用小方框表示一类资源,用方框中的小圈表示资源数。边也有二类,一类是分配边,它由资源结点指向进程结点,另一类是申请边,它由进程结点指向资源结点。 ○ R1 R2 ○ P1 P2 * * 处理死锁的基本方法 a. 死锁的
您可能关注的文档
最近下载
- (高清版)G-B∕T 36992-2019 手动牙间刷.pdf VIP
- 《一只鸟仔》(课件)人音版音乐三年级下册.ppt VIP
- 视觉传达设计专业介绍.pptx VIP
- JB_T 13649.1-2019 高速刀柄与机床主轴接口 第1部分:带有法兰接触面的空心圆锥(HSK)接口技术规范.docx VIP
- J B-T 11342-2013 小型电机定子端部整形机.pdf VIP
- 2023年视觉传达设计专业介绍模板.pptx VIP
- 消防安全评估合同范本6篇.docx VIP
- ags8101_大华视频监控平台接入网关服务器_使用说明书_v1 0 0_20130924.pdf VIP
- SAE AMS2774G-2020 镍及钴合金零件的热处理 Heat Treatment Nickel Alloy and Cobalt Alloy Parts.pdf
- (可直接使用)中国土壤分布.ppt VIP
原创力文档


文档评论(0)