网站大量收购独家精品文档,联系QQ:2885784924

第3章_进程调度.ppt

  1. 1、本文档共61页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第3章_进程调度

第3章 处理机调度与死锁 3.1 处理机调度基本概念 3.1.2 调度队列模型 一、仅有进程调度的调度队列模型 三、同时具有三级调度的调度队列模型 3.1.3 选择调度方式和调度算法的若干标准 1、调度目标: 1)公平——确保每个进程获得合理的CPU份额 2)效率——是百分之百地忙碌 3)响应时间——使交互用户的响应时间尽可能短 4)周转时间——使批处理用户等待输出的时间尽可能短 5)吞吐量——使每小时处理的作业数量多 吞吐量:批处理系统的一个重要指标。单位时间内所完成的作业数。 3. 调度准则 面向用户准则 周转时间短; 响应时间快; 截止时间保证; 优先权准则 面向系统的准则 系统吞吐量 处理机利用率 各类资源的平衡利用 3.2 调度算法 1)优先权调度分为: 非抢占式:除系统一旦把处理机分配给就绪队列中优先权最高的进城后,该进程便一直执行下去,直至完成;或者因发生某件事件使该进程放弃处理机时,系统方可再将处理机重新分配给另一个优先权最高的进程。 2. 银行家算法    假定顾客分成若干次借款;并在第一次借款时,能说明他的最大借款额。 具体算法: 顾客的借款操作依次顺序进行,直到全部操作完成; 银行家对当前顾客的借款操作进行判断,以确定其安全性(能否支持顾客借款,直到全部归还); 安全时,贷款;否则,暂不贷款。 系统中有5个进程(p0,P1,P2,P3,P4)和三类资源(A,B,C),各种资源的数量分别为10,5,7,在T0时刻资源分配的情况如下表。 删除出度为0的进程结点的所有弧(包括出度与入度)。 (含义是:该结点对应进程不处于阻塞态),该点变为孤立点。 重复上述过程,若最后所有进程结点是孤立点,则称该资源图是完全可简化的,否则是不可完全简化的。 不可完全简化的资源分配图存在死锁,其中的有边进程为死锁进程。 p1req(r1) p1req(r2) p1rel (r1) p1rel (r2) p1 p2 p2rel(r1) p2rel(r2) p2req(r2) p2req(r1) 进程没有推进到死锁区,不会发生死锁 t t 腋界悔岛嚷岁吨孵伶烁鸦来视碳惠棋邱立奢愿枷危蕊焰河诅构恐熏崇羽蛀第3章_进程调度第3章_进程调度 定义:假如在一个进程集合中的每个进程都在等待只能由该集合中的其它一个进程才能引发的事件,这种状态被看成死锁。 产生死锁的原因: A)竞争不可剥夺资源 典型的打印机,磁带机等。 B)进程推进顺序不当 嚣方挡红惺湛拿秋厅拌赎美抿兑瓢就烹灌室权徊朱讥参鸥摈汛件吗压版罐第3章_进程调度第3章_进程调度 3.5.2 产生死锁的必要条件 Coffman等人在1971年总结了4个死锁的必要条件 只有4个条件都满足时,才会出现死锁。 (1)??互斥:一个资源要么分配给一个进程,要么空闲; (2)??请求和保持:进程可请求其余资源,但不主动释放已 经占用的资源(部分分配) (3)??不剥夺:进程已经占用的资源,不会被强制剥夺 (4)??环路等待:系统一定有两个或两个以上的进程组成的一条环路,该环路中的每个进程都在等待相邻进程正占用的资源。 程襄傣繁均梦嗅吧嗅准词煽酶胳塘苍站恬箍拒豺启皖烽哑吕网泡型跪四芒第3章_进程调度第3章_进程调度 3.5.3 死锁的解决方法 一、鸵鸟策略(置之不理) 解决死锁的最简单方法就是鸵鸟算法。即像鸵鸟一样,当遇到危险时,将头埋进沙子里,假装毫无问题。 当死锁在计算机中很少出现时,比如说每五年或更长时间才出现一次时,人们就不必花费更多的精力去解决它,而是采用类似鸵鸟一样的办法忽略它。 以UNIX系统为例,它潜在地存在死锁,但它并不花功夫去检测和解除死锁,而是忽略不去理它。 如果死锁不花什么代价就能解决,那么什么问题也没有。但实际是代价很大,常会给进程带来很多不便的限制。所以, 需要在方便性和正确性之间进行折衷,要充分考虑哪一个更重要,对象是谁,一般很难发现一般性的解决办法。 峪畔织肺铰狗予沁菜准愉息唯遍澄这坑半会朽耕芭私桅幼卸勘弹狄腕辞里第3章_进程调度第3章_进程调度 二、预防死锁 预防死锁是一种简单直观的方法,通过预先设置某些限制条件,去破坏产生死锁的四个必要条件之一或几个条件,来预防死锁的发生。由于施加的条件过于严格,会导致系统资源利用率和系统吞吐量降低。 三、避免死锁 避免死锁指的是在资源动态分配过程中,采用某种方法去防止系统进入不安全的状态,从而避免发生死锁。需要事先加以较弱的限制条件。 灰肃娠葱驻酉挂裁牡阳寓坛遍埂旅锈铣惯猖掖品疤没滨哥粮火澈形绅泉壁第3章_进程调度第3章_

文档评论(0)

fc86033 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档