操作系统第10讲new.pptx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第十讲处理机调度算法、实时调度本次课程主要内容调度算法高优先权优先调度算法基于时间片的轮转调度算法实时调度实时调度算法的分类常用的几种实时调度算法处理机调度:内存Process1Process2Process3…..作业调度算法中级调度外存进程调度算法job1job2job3…..Pro1Pro2Pro3…..挂起进程作业CPU处理机调度算法比较:FCFSSJ(P)F优点有利于长作业(进程)有利于短作业(进程)缺点不利于短作业(进程)算法未考虑作业(进程)紧迫程度不利于长作业(进程)算法未考虑作业(进程)紧迫程度作业长短难以准确估计3.3.2 高优先权优先调度算法1.优先权调度算法的类型 为了照顾紧迫型作业,使之在进入系统后便获得优先处理,引入了最高优先权优先(FPF)调度算法。此算法常被用于批处理系统中,作为作业调度算法,也作为多种操作系统中的进程调度算法,还可用于实时系统中。优先权调度算法:内存Process1Process2Process3…..(1)非抢占式优先权算法(2)抢占式优先权调度算法 作业调度算法外存进程调度算法job1job2job3…..作业CPU处理机用于作业调度时:从后备队列中选择若干个优先权最高的作业装入内存。当用于进程调度时:该算法是把处理机分配给就绪队列中优先权最高的进程优先权的类型:优先权确定的依据:进程类型、进程对资源的需求、用户要求静态优先权动态优先权描述创建时确定,0~7或0~255中的某一整数可以随进程的推进或随其等待时间的增加而改变的优点简单易行,系统开销小能够防止作业(进程)饿死缺点不够精确,很可能出现优先权低的作业(进程)长期没有被调度的情况。实现相对复杂,动态计算优先权有一定的系统开销2.高响应比优先调度算法 在批处理系统中,短作业优先算法是一种比较好的算法,其主要的不足之处是长作业的运行得不到保证。如果使作业的优先级随着等待时间的增加而以速率a提高,作业在等待一定的时间后,必然有机会分配到处理机。 由于等待时间与服务时间之和就是系统对该作业的响应时间,故该优先权又相当于响应比RP。据此,又可表示为: 思考:优先权会产生怎样的动态变化?3.3.3 基于时间片的轮转调度算法1.时间片轮转法 1) 基本原理内存时间片轮转调度算法时钟中断请求几ms到几百msProcess1Process2Process3…..CPU处理机2) 时间片大小的确定 在时间片轮转算法中,时间片的大小对系统性能有很大的影响,如选择很小的时间片将有利于短作业,因为它能较快地完成,但会频繁地发生中断、进程上下文的切换,从而增加系统的开销;反之,如选择太长的时间片,使得每个进程都能在一个时间片内完成,时间片轮转算法便退化为FCFS算法,无法满足交互式用户的需求。一个较为可取的大小是,时间片略大于一次典型的交互所需要的时间。这样可使大多数进程在一个时间片内完成。q=1和q=4时的进程运行情况 q=1和q=4时进程的周转时间 思考:什么类型的系统采用时间片轮转调度算法?2.多级反馈队列调度算法3.多级反馈队列调度算法的性能(1) 终端型作业用户(2) 短批处理作业用户(3) 长批处理作业用户3.4 实 时 调 度 3.4.1 实现实时调度的基本条件1.提供必要的信息 为了实现实时调度,系统应向调度程序提供有关任务的下述一些信息: (1) 就绪时间。这是该任务成为就绪状态的起始时间,在周期任务的情况下,它就是事先预知的一串时间序列;而在非周期任务的情况下,它也可能是预知的。 (2) 开始截止时间和完成截止时间。对于典型的实时应用,只须知道开始截止时间,或者知道完成截止时间。 (3) 处理时间。这是指一个任务从开始执行直至完成所需的时间。在某些情况下,该时间也是系统提供的。 (4) 资源要求。这是指任务执行时所需的一组资源。 (5) 优先级。如果某任务的开始截止时间已经错过,就会引起故障,则应为该任务赋予“绝对”优先级;如果开始截止时间的推迟对任务的继续运行无重大影响,则可为该任务赋予“相对”优先级,供调度程序参考。 2.系统处理能力强 在实时系统中,通常都有着多个实时任务。若处理机的处理能力不够强,则有可能因处理机忙不过来而使某些实时任务不能得到及时处理,从而导致发生难以预料的后果。假定系统中有m个周期性的硬实时任务,它们的处理时间可表示为Ci,周期时间表示为Pi,则在单处理机情况下,必须满足下面的限制条件: 系统才是可调度的。假如系统中有6个硬实时任务,它们的周期时间都是 50 ms,而每次的处理时间为 10 ms,则不难算出,此时是不能满足上式的,因而系统是不可调度的。3.采用抢占式调度机制 在含有硬实时任务的实时系统中,广泛采用抢占机制。当一个优先权更高的任务到达时,允许将当前任务暂时挂起,而令高优先权任务立即

文档评论(0)

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

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

1亿VIP精品文档

相关文档