1.使用SJF和FIFO调度程序运行长度为200的3个作业时,计算响应时间和周转时间。

FIFO 周转时间:(200+400+600)/3=400
FIFO 响应时间:(0+200+400)/3=200
答案如下:

SJF的情况和FIFO的情况一致
2.现在做同样的事情,但有不同长度的作业,即100、200和300。

SJF 周转时间: (100+300+600)/3=333
SJF 响应时间:(0+100+300)/3=133
答案如下:

FIFO和SJF情况一致(因为作业的长度刚好和FIFO的处理顺序一致)
3.现在做同样的事情,但采用RR调度程序,时间片为1。

RR 响应时间:(0+1+2)/3=1
RR 周转时间:(298+499+600)/3=465
前300个时间片中,三个作业交替进行,所以job0完成的时间是在1+3x99=298,此时,job1和job2分别还剩下100和200,然后在300-500时间片中,两个作业交替进行,所以job1完成的时间是在300+1+2*99=499,最后job2的完成时间是在600
答案如下:

4.对于什么类型的工作负载,SJF提供与FIFO相同的周转时间?
任务处理顺序于任务长度顺序相同的工作负载,此时二者周转时间相同(因为此时二者处理顺序一样)
5.对于什么类型的工作负载和量子长度,SJF与RR提供相同的响应时间?
任务的长度和时间片长度一致时,二者的响应时间相同
6.随着工作长度的增加,SJF的响应时间会怎样?你能使用模拟程序来展示趋势吗?
某个工作的长度增加,只会影响排在他后面处理(也就是长度比他大的工作)的响应时间,总体的响应时间也会增加
7.随着量子长度的增加,RR的响应时间会怎样?你能写出一个方程,计算给定N个工作时,最坏情况的响应时间吗?
R = (N - 1) * Q,第N个工作需要等待(N-1)个时间片才能执行,所以最坏情况的响应时间就是最后一个获得时间片的工作的响应时间
posted on
浙公网安备 33010602011771号