处理机调度与死锁par.ppt
《处理机调度与死锁par.ppt》由会员分享,可在线阅读,更多相关《处理机调度与死锁par.ppt(39页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第三章 处理机调度与死锁 第三章第三章 处理机调度与死锁处理机调度与死锁 3.1 3.1 处理机调度的层次处理机调度的层次 3.2 3.2 调度队列模型和调度准则调度队列模型和调度准则 3.3 3.3 调度算法调度算法 3.4 3.4 实时调度实时调度 3.5 3.5 产生死锁的原因和必要条件产生死锁的原因和必要条件 3.6 3.6 预防死锁的方法预防死锁的方法 3.7 3.7 死锁的检测与解除死锁的检测与解除 1第三章 处理机调度与死锁 3.3 调调 度度 算算 法法 3.3.1 先来先服务和短作业先来先服务和短作业(进程进程)优先调度算法优先调度算法 1.先来先服务调度算法先来先服务调度算
2、法 貌似公平的算法,对短作业不利。貌似公平的算法,对短作业不利。2.短作业短作业(进程进程)优先调度算法优先调度算法 短作业优先(SJF)的调度算法,是从后备队列中选择一个或若干个估计运行时间最短的作业,将它们调入内存运行。短进程优先(SPF)调度算法,则是从就绪队列中选出一估计运行时间最短的进程,将处理机分配给它,使它立即执行并一直执行到完成,或发生某事件而被阻塞放弃处理机时,再重新调度。2第三章 处理机调度与死锁 SJ(P)F调度算法也存在不容忽视的缺点:调度算法也存在不容忽视的缺点:(1)该该算算法法对对长长作作业业不不利利。更更严严重重的的是是,如如果果有有一一长长作作业业(进进程程)
3、进进入入系系统统的的后后备备队队列列(就就绪绪队队列列),由由于于调调度度程程序序总总是是优优先先调调度度那那些些(即即使使是是后后进进来来的的)短短作作业业(进进程程),将将导导致长作业致长作业(进程进程)长期不被调度。长期不被调度。(2)该该算算法法完完全全未未考考虑虑作作业业的的紧紧迫迫程程度度,因因而而不不能能保保证证紧迫性作业紧迫性作业(进程进程)会被及时处理。会被及时处理。(3)由由于于作作业业(进进程程)的的长长短短只只是是根根据据用用户户所所提提供供的的估估计计执执行行时时间间而而定定的的,而而用用户户又又可可能能会会有有意意或或无无意意地地缩缩短短其其作作业业的的估估计计运运
4、行行时时间间,致致使使该该算算法法不不一一定定能能真真正正做做到到短短作作业业优先调度。优先调度。3第三章 处理机调度与死锁 3.3.2 高优先权优先调度算法高优先权优先调度算法 1.优先权调度算法的类型优先权调度算法的类型 1)非抢占式优先权算法 在这种方式下,系统一旦把处理机分配给就绪队列中优先权最高的进程后,该进程便一直执行下去,直至完成;或因发生某事件使该进程放弃处理机时,系统方可再将处理机重新分配给另一优先权最高的进程。这种调度算法主要用于批批处处理理系系统统中;也可用于某些对实时性要要求不严的实时系统求不严的实时系统中。4第三章 处理机调度与死锁 2)抢占式优先权调度算法抢占式优先
5、权调度算法 在在这这种种方方式式下下,系系统统同同样样是是把把处处理理机机分分配配给给优优先先权权最最高高的的进进程程,使使之之执执行行。但但在在其其执执行行期期间间,只只要要又又出出现现了了另另一一个个其其优优先先权权更更高高的的进进程程,进进程程调调度度程程序序就就立立即即停停止止当当前前进进程程(原原优优先先权权最最高高的的进进程程)的的执执行行,重重新新将将处处理理机机分分配配给给新新到到的的优先权最高的进程。优先权最高的进程。因因此此,在在采采用用这这种种调调度度算算法法时时,是是每每当当系系统统中中出出现现一一个个新新的的就就绪绪进进程程i时时,就就将将其其优优先先权权Pi与与正正
6、在在执执行行的的进进程程j的的优优先先权权Pj进进行行比比较较。如如果果PiPj,原原进进程程Pj便便继继续续执执行行;但但如如果果是是PiPj,则则立立即即停停止止Pj的的执执行行,做做进程切换,使进程切换,使i进程投入执行进程投入执行。显显然然,这这种种抢抢占占式式的的优优先先权权调调度度算算法法,能能更更好好地地满满足足紧紧迫迫作作业业的的要要求求,故故而而常常用用于于要要求求比比较较严严格格的的实实时时系系统统中中,以以及及对性能要求较高的批处理和分时系统对性能要求较高的批处理和分时系统中。中。5第三章 处理机调度与死锁 2.优先权的类型优先权的类型 1)静态优先权静态优先权 静静态态
7、优优先先权权是是在在创创建建进进程程时时确确定定的的,且且在在进进程程的的整整个个运行期间保持不变。运行期间保持不变。一一般般地地,优优先先权权是是利利用用某某一一范范围围内内的的一一个个整整数数来来表表示示的的,例例如如,07或或0255中中的的某某一一整整数数,又又把把该该整整数数称称为为优优先先数数。只只是是具具体体用用法法各各异异:有有的的系系统统用用“0”表表示示最最高高优优先先权权,当当数数值值愈愈大大时时,其其优优先先权权愈愈低低;而而有有的的系系统统恰恰恰恰相反。相反。6第三章 处理机调度与死锁 确定进程优先权的依据有如下三个方面:确定进程优先权的依据有如下三个方面:(1)进程
8、类型。进程类型。(2)(2)进程对资源的需求。进程对资源的需求。(3)(3)用户要求。用户要求。7第三章 处理机调度与死锁 2)动态优先权动态优先权 动动态态优优先先权权是是指指,在在创创建建进进程程时时所所赋赋予予的的优优先先权权,是是可可以以随随进进程程的的推推进进或或随随其其等等待待时时间间的的增增加加而而改改变变的的,以以便便获获得更好的调度性能。得更好的调度性能。例例如如,我我们们可可以以规规定定,在在就就绪绪队队列列中中的的进进程程,随随其其等等待待时间的增长,其优先权以速率时间的增长,其优先权以速率a a提高。提高。若若所所有有的的进进程程都都具具有有相相同同的的优优先先权权初初
9、值值,则则显显然然是是最最先先进进入入就就绪绪队队列列的的进进程程,将将因因其其动动态态优优先先权权变变得得最最高高而而优优先先获获得得处处理理机机,此此即即FCFS算法。算法。若若所所有有的的就就绪绪进进程程具具有有各各不不相相同同的的优优先先权权初初值值,那那么么,对对于于优优先先权权初初值值低低的的进进程程,在在等等待待了了足足够够的的时时间间后后,其其优优先先权权便便可可能能升升为为最最高高,从从而而可可以以获获得得处处理理机机。当当采采用用抢抢占占式式优优先先权权调调度度算算法法时时,如如果果再再规规定定当当前前进进程程的的优优先先权权以以速速率率b下下降降,则则可可防防止止一一个个
10、长长作作业业长期地垄断处理机。长期地垄断处理机。8第三章 处理机调度与死锁 3.高响应比优先调度算法高响应比优先调度算法 优先权的变化规律可描述为:优先权的变化规律可描述为:由由于于等等待待时时间间与与服服务务时时间间之之和和,就就是是系系统统对对该该作作业业的的响响应应时间,故该优先权又相当于响应比时间,故该优先权又相当于响应比RP。据此,又可表示为:。据此,又可表示为:9第三章 处理机调度与死锁 (1)如如果果作作业业的的等等待待时时间间相相同同,则则要要求求服服务务的的时时间间愈愈短,其优先权愈高,因而该算法有利于短作业。短,其优先权愈高,因而该算法有利于短作业。(2)当当要要求求服服务
11、务的的时时间间相相同同时时,作作业业的的优优先先权权决决定定于于其其等等待待时时间间,等等待待时时间间愈愈长长,其其优优先先权权愈愈高高,因因而而它它实实现的是先来先服务。现的是先来先服务。(3)对对于于长长作作业业,作作业业的的优优先先级级可可以以随随等等待待时时间间的的增增加加而而提提高高,当当其其等等待待时时间间足足够够长长时时,其其优优先先级级便便可可升升到到很高,很高,从而也可获得处理机。从而也可获得处理机。10第三章 处理机调度与死锁【例】【例】假设有四个作业,它们的提交、运行时间如下假设有四个作业,它们的提交、运行时间如下表所示。若采用响应比高者优先调度算法,试问平均表所示。若采
12、用响应比高者优先调度算法,试问平均周转时间和平均带权周转时间为多少?(时间单位:周转时间和平均带权周转时间为多少?(时间单位:小时,以十进制进行计算。)小时,以十进制进行计算。)作业号 到达时间 运行时间1 8.0 2.02 8.3 0.53 8.5 0.14 9.0 0.4解:解:响应比作业响应时间响应比作业响应时间/运行时间的估计值运行时间的估计值 1 1作业等待时间作业等待时间/运行时间的估计值运行时间的估计值 11第三章 处理机调度与死锁 作作业业号号到达到达时间时间运行运行时间时间开始开始时间时间完成完成时间时间周周转时间转时间带权带权周周转时间转时间1(1)8.02.08.010.
13、02(3)8.30.510.110.63(2)8.50.110.010.14(4)9.00.410.611.0四个作业的调度次序为:作业四个作业的调度次序为:作业1,作业,作业3,作业,作业2,作业,作业4。平均周转时间平均周转时间平均带权周转时间平均带权周转时间12第三章 处理机调度与死锁 3.3.3 基于时间片的轮转调度算法基于时间片的轮转调度算法 1.时间片轮转法时间片轮转法 在在早早期期的的时时间间片片轮轮转转法法中中,系系统统将将所所有有的的就就绪绪进进程程按按先先来来先先服服务务的的原原则则,排排成成一一个个队队列列,每每次次调调度度时时,把把CPU分分配配给给队队首首进进程程,并
14、并令令其其执执行行一一个个时时间间片片。时时间间片片的的大大小小从从几几ms到几百到几百ms。当当执执行行的的时时间间片片用用完完时时,由由一一个个计计时时器器发发出出时时钟钟中中断断请请求求,调调度度程程序序便便据据此此信信号号来来停停止止该该进进程程的的执执行行,并并将将它它送送往往就就绪绪队队列列的的末末尾尾;然然后后,再再把把处处理理机机分分配配给给就就绪绪队队列列中中新新的的队首进程,同时也让它执行一个时间片。队首进程,同时也让它执行一个时间片。这这样样就就可可以以保保证证就就绪绪队队列列中中的的所所有有进进程程,在在一一给给定定的的时时间内,均能获得一时间片的处理机执行时间。间内,
15、均能获得一时间片的处理机执行时间。例题例题13第三章 处理机调度与死锁 2.多级反馈队列调度算法多级反馈队列调度算法 (1)应应设设置置多多个个就就绪绪队队列列,并并为为各各个个队队列列赋赋予予不不同同的的优先级。优先级。第第一一个个队队列列的的优优先先级级最最高高,第第二二个个队队列列次次之之,其其余余各队列的优先权逐个降低。各队列的优先权逐个降低。该该算算法法赋赋予予各各个个队队列列中中进进程程执执行行时时间间片片的的大大小小也也各各不不相相同同,在在优优先先权权愈愈高高的的队队列列中中,为为每每个个进进程程所所规规定定的的执执行行时时间间片片就就愈愈小小。例例如如,第第二二个个队队列列的
16、的时时间间片片要要比比第第一一个个队队列列的的时时间间片片长长一一倍倍,第第i+1个个队队列列的的时时间间片片要要比比第第i个个队列的时间片长一倍。队列的时间片长一倍。图图 3-5 是多级反馈队列算法的示意是多级反馈队列算法的示意。14第三章 处理机调度与死锁 图 3-5 多级反馈队列调度算法 15第三章 处理机调度与死锁 (2)当一个新进程进入内存后,当一个新进程进入内存后,l首首先先将将它它放放入入第第一一队队列列的的末末尾尾,按按FCFS原原则则排排队队等等待待调调度度。当当轮轮到到该该进进程程执执行行时时,如如它它能能在在该该时时间间片片内内完完成,便可准备撤离系统;成,便可准备撤离系
17、统;l如如果果它它在在一一个个时时间间片片结结束束时时尚尚未未完完成成,调调度度程程序序便便将将该该进进程程转转入入第第二二队队列列的的末末尾尾,再再同同样样地地按按FCFS原原则则等等待调度执行;待调度执行;l如如果果它它在在第第二二队队列列中中运运行行一一个个时时间间片片后后仍仍未未完完成成,再再依次将它放入第三队列,依次将它放入第三队列,l如如此此下下去去,当当一一个个长长作作业业(进进程程)从从第第一一队队列列依依次次降降到到第第n队队列列后后,在在第第n队队列列中中便便采采取取按按时时间间片片轮轮转转的的方方式式运运行。行。16第三章 处理机调度与死锁 (3)仅仅当当第第一一队队列列
18、空空闲闲时时,调调度度程程序序才才调调度度第第二二队队列列中中的的进进程程运运行行;仅仅当当第第1(i-1)队队列列均均空空时时,才才会会调调度度第第i队列中的进程运行。队列中的进程运行。如果处理机正在第i队列中为某进程服务时,又有新进程进入优先权较高的队列(第1(i-1)中的任何一个队列),则此时新进程将抢占正在运行进程的处理机,即由调度程序把正在运行的进程放回到第i队列的末尾,把处理机分配给新到的高优先权进程。17第三章 处理机调度与死锁 3.多级反馈队列调度算法的性能多级反馈队列调度算法的性能(1)终端型作业用户。(2)(2)短批处理作业用户。(3)(3)长批处理作业用户。18第三章 处
19、理机调度与死锁 3.4 实实 时时 调调 度度 3.4.1 实现实时调度的基本条件实现实时调度的基本条件 1.提供必要的信息提供必要的信息(1)就绪时间。(2)(2)开始截止时间和完成截止时间。(3)(3)处理时间。(4)(4)资源要求。(5)(5)优先级。19第三章 处理机调度与死锁 2.系统处理能力强系统处理能力强 在在实实时时系系统统中中,通通常常都都有有着着多多个个实实时时任任务务。若若处处理理机机的的处处理理能能力力不不够够强强,则则有有可可能能因因处处理理机机忙忙不不过过来来而而使使某某些些实实时时任任务务不不能能得得到到及及时时处处理理,从从而而导导致致发发生生难难以以预预料料的
20、的后后果果。假假定定系系统统中中有有m个个周周期期性性的的硬硬实实时时任任务务,它它们们的的处处理理时时间间可可表表示示为为Ci,周周期期时时间间表表示示为为Pi,则则在在单单处处理理机机情情况况下下,必必须须满足下面的限制条件:满足下面的限制条件:系统才是可调度的。系统才是可调度的。20第三章 处理机调度与死锁 假假如如系系统统中中有有6个个硬硬实实时时任任务务,它它们们的的周周期期时时间间都都是是 50 ms,而每次的处理时间为,而每次的处理时间为 10 ms。系统可调度吗?系统可调度吗?不不难难算算出出,此此时时是是不不能能满满足足上上式式的的,因因而而系系统统是是不不可可调度的。调度的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 处理机 调度 死锁 par
限制150内