不确定我是否正确理解了RR的概念。
假设我已准备好三个进程CPU:
A - 第一优先级 - 需要2分钟的CPU时间;
B - 第3优先 - 5分钟;
C - 第二优先 - 10分钟;
因此,为了计算“纸上”的平均周转时间,我可以假设量子= 1分钟并根据其优先级(A-C-B等)处理所有内容。
但是一分钟对于一个“真正的”量子来说太大了吧?如果量程= 10-100毫秒,那么一切都会切换到如此之快以至于任务顺序变得无关紧要吗?我是否应该假设每个作业只消耗相同数量(1/3)的CPU时间并从那里开始?例如。 A将以2 * 3 = 6分钟结束,B将以(5-2)* 2 + 6 = 12分钟结束,C将以10-2-3 + 12 = 17分钟结束。因此平均值为(6 + 12 + 17)/3=11.66?或者这只是荒谬的?
答案 0 :(得分:1)
如果进程A,B和C需要执行时间如下,
A - 2 minutes
B - 5 minutes
C - 10 minutes
然后循环调度将为您提供以下周转时间,如果优先级顺序为A,后跟C后跟B。
A - 4 minutes
B - 12 minutes
C - 17 minutes
进程的执行如下,
Time-> 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
A - C - B - A - C - B - C - B - C - B - C - B - C - C - C - C - C
^ ^ ^
| | |
Process A Process B Process C
Completed Completed Completed
记住顺序在循环调度中很重要,因为在这种情况下,平均周转时间只是(4 + 12 + 17)/ 3 = 11.