第三章处理机调度与死锁.ppt
《第三章处理机调度与死锁.ppt》由会员分享,可在线阅读,更多相关《第三章处理机调度与死锁.ppt(96页珍藏版)》请在三一办公上搜索。
1、第三章 处理机调度与死锁,3.1 处理机调度的基本概念,3.1.1 高级、中级和低级调度,1.高级调度(High Scheduling),又称作业调度、长程调度:决定把外存上处于后备队列中的哪些作业调入内存,并为之创建进程、分配必要的资源,然后,再将新创建的进程排在就绪队列中。,1.高级调度(High Scheduling),批处理系统:需作业调度分时系统:无需作业调度实时系统:通常无需作业调度,在每次执行作业调度时,都须做出以下两个决定:1)接纳多少个作业 2)接纳哪些作业,1.高级调度(High Scheduling),2.低级调度(Low Level Scheduling),进程调度、短
2、程调度:决定就绪队列中哪个进程应获得处理机,然后再由分派程序执行把处理机分配给该进程的具体操作。三种类型的OS均需配置进程调度,2.低级调度(Low Level Scheduling),进程调度方式:1)非抢占方式(Non-preemptive Mode)进程一旦获得CPU则一直执行,直至完成或被阻塞。,采用非抢占方式,引起进程调度的因素:正在执行的进程执行完毕,或因发生某事件而不能再继续执行;执行中的进程因提出I/O请求而暂停执行;在进程通信或同步过程中执行了某种原语操作,如P操作(wait操作)、Block原语、Wakeup原语等。,2)抢占方式(Preemptive Mode)正在执行的
3、进程可以被中途剥夺CPU使用权,进程调度方式,抢占的原则有:,优先权原则。(2)短作业(进程)优先原则(3)时间片原则。,3.中级调度(Intermediate-Level Scheduling),中级调度又称中程调度(Medium-Term Scheduling)。引入的主要目的:是为了提高内存利用率和系统吞吐量(存储器管理的对换)中程调度:将那些暂时不能运行的进程不再占用宝贵的内存资源,而将它们调至外存上去等待,把此时的进程状态称为就绪驻外存状态或挂起状态。当这些进程重又具备运行条件、且内存又稍有空闲时,由中级调度来决定把外存上的哪些又具备运行条件的就绪进程,重新调入内存,并修改其状态为就
4、绪状态,挂在就绪队列上等待进程调度。,3.1.2 调度队列模型,1.仅有进程调度的调度队列模型,2.具有高级和低级调度的调度队列模型,(1)就绪队列的形式:优先权队列、无序链表等(2)设置多个阻塞队列:每个队列对应于某一种进程阻塞事件,该模型与上一模型的主要区别在于如下两个方面:,2.具有高级和低级调度的调度队列模型,3.同时具有三级调度的调度队列模型,3.1.3 选择调度方式和调度算法的若干准则,1.面向用户的准则,(1)周转时间短。,周转时间的长短是评价批处理系统性能、选择作业调度方式与算法的重要准则之一,周转时间:从作业提交给系统开始,到作业完成为之的这段时间间隔(作业周转时间)作业在外
5、存后备队列上等待(作业)调度的时间 进程在就绪队列上等待进程调度的时间 进程在CPU上执行的时间 进程等待I/O操作完成的时间,(1)周转时间短。,平均周转时间:,带权周转时间:W=T/TS平均带权周转时间:,(1)周转时间短。,(2)响应时间快,响应时间的长短是评价分时系统性能、选择分时系统中进程调度算法的重要准则之一,响应时间:用户通过键盘提交一个请求开始,直至系统首次产生响应为止的时间,或者说直至屏幕上显示出结果为止的一段时间间隔 键盘输入的请求信息传送到处理机的时间 处理机对请求信息进行处理的时间 形成的响应信息回送到终端显示器的时间,(3)截止时间的保证,截止时间是评价实时系统性能的
6、重要指标,是选择实时调度算法的重要准则,截止时间:某任务必须开始执行的最迟时间或必须完成的最迟时间,(4)优先权准则,三种系统均可应用本准则,2.面向系统的准则,(1)系统吞吐量高 评价批处理系统 吞吐量:单位时间内所完成的作业数(2)处理机利用率好 大中型系统中要考虑(3)各类资源的平衡利用 大中型系统中要考虑,3.2 调度算法,调度算法:根据系统的资源分配策略所规定的资源分配算法,3.2.1 先来先服务和短作业(进程)优先调度算法,1.先来先服务(FCFS)调度算法,特点:可用于作业调度、也可用于进程调度 利于长作业(进程)、不利于短作业(进程)利于CPU繁忙型作业,不利于I/O繁忙型的作
7、业(进程),FCFS实例,1.先来先服务调度算法,平均周转时间:,平均带权周转时间,2.短作业(进程)优先调度算法,短作业优先(SJF)调度算法:从后备队列中选择一个或若干个估计运行时间最短的作业,将它们调入内存运行。短进程优先(SPF)调度算法:从就绪队列中选出一估计运行时间最短的进程,将处理机分配给它,使它立即执行并一直执行到完成,或发生某事件而被阻塞放弃处理机时,再重新调度。,平均周转时间:,带权周转时间:W=T/TS,平均带权周转时间:,优点:有效的降低作业的平均等待时间,提高了系统的吞吐量。缺点:对长作业不利 完全未考虑作业的紧迫程度 作业的运行时间不能准确获得,2.短作业(进程)优
8、先调度算法,3.2.2 高优先权优先调度算法,1.优先权调度算法的类型,非抢占式优先权算法,主要用于批处理系统中;也可用于某些对实时性要求不严的实时系统中。,这种抢占式的优先权调度算法,能更好地满足紧迫作业的要求,故而常用于要求比较严格的实时系统中,以及对性能要求较高的批处理和分时系统中。,1.优先权调度算法的类型,2)抢占式优先权调度算法,2.优先权的类型,静态优先权是在创建进程时确定的,且在进程的整个运行期间保持不变。,1)静态优先权,确定进程优先权的依据有如下三个方面:(1)进程类型。(2)进程对资源的需求。(3)用户要求。,1)静态优先权,动态优先权是指,在创建进程时所赋予的优先权,是
9、可以随进程的推进或随其等待时间的增加而改变的,以便获得更好的调度性能。,2)动态优先权,3.高响应比优先调度算法,优先权的变化规律可描述为:,由于等待时间与服务时间之和,就是系统对该作业的响应时间,故该优先权又相当于响应比RP。据此,又可表示为:,(1)等待时间相同,则要求服务的时间愈短,其优先权愈高有利于短作业(2)当要求服务的时间相同时,则等待时间愈长,其优先权愈高先来先服务(3)长作业只要等待时间足够长,其优先级便可升到很高,从而也可获得处理机(4)响应比的计算增加了系统开销,3.高响应比优先调度算法,例:,单道批处理系统中,一组作业的提交时刻和运行时间如表所示。采用高响应比优先调度算法
10、,作业1到达时,没有其它作业到达,故作业1执行,作业1执行完成时刻为9.0,作业2、3均已到达,此时作业2、3的响应比分别是:作业2=1+0.5/0.5=2;作业3=1+0/0.2=1;即选择2运行,作业2执行完成时刻为9.5,作业3、4均已到达,其响应比分别是:作业3=1+0.5/0.2=3.5 作业4=1+0.4/0.1=5,即选择作业4运行。,最后只剩下作业3,执行,3.2.3 基于时间片的轮转调度算法,时间片太大,每个进程均可在时间片内执行完毕退化为FCFS,1.时间片轮转法,确定时间片大小的考虑因素:1、系统对响应时间的要求2、就绪队列中进程的数目3、系统的处理能力,2.多级反馈队列
11、调度算法,(1)应设置多个就绪队列,优先级,(2)当一个新进程进入内存后,首先将它放入第一队列的末尾,按时间片轮转法等待调度。当轮到该进程执行时,如它能在该时间片内完成,便可准备撤离系统;如果它在一个时间片结束时尚未完成,调度程序便将该进程转入第二队列的末尾,再同样地按时间片轮转法等待调度执行;如果它在第二队列中运行一个时间片后仍未完成,再依次将它放入第三队列,如此下去,当一个长作业(进程)从第一队列依次降到第n队列后,在第n队列中便采取按时间片轮转的方式运行。,2.多级反馈队列调度算法,(3)仅当第一队列空闲时,调度程序才调度第二队列中的进程运行;仅当第1(i-1)队列均空时,才会调度第i队
12、列中的进程运行。如果处理机正在第i队列中为某进程服务时,又有新进程进入优先权较高的队列(第1(i-1)中的任何一个队列),则此时新进程将抢占正在运行进程的处理机,即由调度程序把正在运行的进程放回到第i队列的末尾,把处理机分配给新到的高优先权进程。,2.多级反馈队列调度算法,3.多级反馈队列调度算法的性能,(1)终端型作业用户。(2)短批处理作业用户。(3)长批处理作业用户。,3.3 实时调度,实时系统,能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行的计算机系统 分为实时控制系统和实时信息处理系统两类,实时任务,周期性实时任务、非周期实时任务 硬实时
13、任务、软实时任务,3.3 实时调度,3.3.1 实现实时调度的基本条件,1.提供必要的信息,(1)就绪时间。(2)开始截止时间和完成截止时间。(3)处理时间。(4)资源要求。(5)优先级。,2.系统处理能力强,假定系统中有m个周期性的硬实时任务,它们的处理时间为Ci,周期时间为Pi,则在单处理机情况下,必须满足下面的限制条件:,3.3.1 实现实时调度的基本条件,提高系统处理能力的途径有二:其一仍是采用单处理机系统,但须增强其处理能力,以显著地减少对每一个任务的处理时间 其二是采用多处理机系统。假定系统中的处理机数为N,则应将上述的限制条件改为:,2.系统处理能力强,3.采用抢占式调度机制,抢
14、占机制 非抢占机制,3.3.1 实现实时调度的基本条件,4.具有快速切换机制,该机制应具有如下两方面的能力:(1)对外部中断的快速响应能力(2)快速的任务分派能力,3.3.1 实现实时调度的基本条件,3.3.2 实时调度算法的分类,1.非抢占式调度算法,(1)非抢占式轮转调度算法,3.3.2 实时调度算法的分类,1.非抢占式调度算法,(2)非抢占式优先调度算法。,2.抢占式调度算法,(1)基于时钟中断的抢占式优先权调度算法,3.3.2 实时调度算法的分类,3.3.2 实时调度算法的分类,(2)立即抢占(Immediate Preemption)的优先权调度算法,2.抢占式调度算法,3.3.3
15、常用的几种实时调度算法,1.最早截止时间优先即EDF(Earliest Deadline First)算法,根据任务的开始截止时间来确定任务的优先级,即可用于抢占式调度、也可用于非抢占式调度,1.最早截止时间优先即EDF(Earliest Deadline First)算法,1.最早截止时间优先即EDF(Earliest Deadline First)算法,采用抢占式最早开始截至时间优先调度算法,0,10,20,30,40,90,70,50,60,80,100,110,120,A,B,C,E,D,A,2.最低松弛度优先即LLF(Least Laxity First)算法,该算法是根据任务紧急(
16、或松弛)的程度,来确定任务的优先级。任务的紧急程度愈高,为该任务所赋予的优先级就愈高,以使之优先执行。该算法主要用于可抢占调度方式中,2.最低松弛度优先即LLF(Least Laxity First)算法,周期性实时任务A、B,A要求每20ms执行一次,执行时间10ms;B要求每50ms执行一次,执行时间25ms,在刚开始时(t1=0),A1必须在20ms时完成,而它本身运行又需 10 ms,可算出A1的松弛度为10ms;B1必须在50ms时完成,而它本身运行就需25 ms,可算出B1的松弛度为25 ms,故调度程序应先调度A1执行。,在t2=10 ms时,A2的松弛度可按下式算出:A2的松弛
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第三 处理机 调度 死锁
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-4866047.html