一个有两个作业管理进程的批处理系统,作业调度采用最高响应比优先的算法,进程调度采用基于优先数(优先数大表示优先级别高)的算法。有以下作业序列: 作业F的运行结束时间为(26)(假定在作业运行期间,除了有空闲的作业管理进程以外,系统不进行调度工作)。

admin2013-05-11  31

问题 一个有两个作业管理进程的批处理系统,作业调度采用最高响应比优先的算法,进程调度采用基于优先数(优先数大表示优先级别高)的算法。有以下作业序列:

作业F的运行结束时间为(26)(假定在作业运行期间,除了有空闲的作业管理进程以外,系统不进行调度工作)。

选项 A、14:50
B、15:30
C、13:40
D、13:10

答案A

解析 本题考查的内容是作业调度中的最高响应比优先算法、进程调度中的基于优先数的调度算法的概念及其应用。
   所谓最高响应比优先算法,首先需要在调度时刻计算每个后备作业的响应比。即响应比=(作业等待时间+作业估计运行时间)/作业估计运行时间。实际上,比较不同作业响应比时起作用的是:作业等待时间/作业估计运行时间。在计算以后,挑选响应比最大的后备作业投入运行,这个算法是比较优秀的。大家都知道,数学上可以证明短作业优先的调度算法可以得到最小的作业平均响应时间(亦即可以得到最大的系统平均吞吐率)。但是,它不能排除有可能出现“无限等待”的现象,因为它允许短作业“加塞”,如果短作业源源不断地到来,将可能使长作业在不可预计的一段时间内得不到运行。而最高响应比优先的算法则保证在到达时间相近的一批作业中,估计运行时间小的作业(短作业)可以优先投入运行,在作业大小相仿时,到达时间早的作业可以先投入运行。即使是很长的作业,随着后备时间的延长,其响应比也不断增大,最终将会投入运行,从而避免出现“无限等待”的现象。
   所谓基于优先数的调度算法,则在调度时刻比较各个进程的优先数,挑选优先级别高的进程运行。
   本题中,10:00时,作业A到达,此时没有别的作业,自然投入运行。到10:20时,作业B到达,由于还空闲一个作业管理进程,作业B进入系统,进行进程调度。由于B的优先级别高,作业B投入运行,A在内存等待。到11:20时,B运行结束并退出,空出一个作业管理进程,系统开始作业调度。此时,作业C、D均已到达,由于C的响应比=(30+40)/40=1.75>D的响应比=(0+80)/80=1,作业C进入内存,在进行进程调度时,由于 C的优先数为3,比作业A小,A投入运行。到11:50时,A剩下的30分运行时间结束,退出系统,这时作业E已经到达。此时,D的响应比=(30+80)/80=1.375>E的响应比=(10+30)/30=1.333,作业D进入内存,由于D的优先数为8,高于作业C,D投入运行。到13:10时,作业D运行结束。这时作业F也早已到达,在两个后备作业中,E的响应比=(90+30)/30=4,F的响应比=(70+70)/70=2,作业E进入运行,又由于E的优先数比C大, E投入运行。到13:40时,E运行结束,这时后备作业只有F,F进入内存,由于它的优先数为9,远大于C,于是投入运行,到14:50结束运行。最后只剩下C一个作业,于15:30运行结束。
   各作业运行结束时间表为A为11:50、B为11:20、C为15:30、D为13:10、E为13:40、 F为14:50。
转载请注明原文地址:https://jikaoti.com/ti/Erf7FFFM
0

相关试题推荐
最新回复(0)