多级反馈队列调度
有人可以请解释如何使用多级反馈队列调度为以下绘制甘特图
考虑具有三个队列的多级反馈队列调度,编号为Q1,Q2,Q3。 调度器首先在Q1中执行进程,该进程的时间量为10毫秒。 如果一个进程在这段时间内没有完成,它将被移动到Q2的尾部。只有当Q1为空时,调度器才会在Q2中执行进程。 第二季度头部的过程被赋予16毫秒的量程。如果它没有完成,它将被抢占并被放入Q3。 仅当Q1和Q2为空时,Q3中的进程才以FCFS为基础运行。
Processes Arrival time Burst time
P1 0 17
P2 12 25
P3 28 8
P4 36 32
P5 46 18
首先,我们需要实现Multilevel Feedback Queue Scheduling
算法,因此我们需要修复量子时间= 10 ms。
进程将被保留在就绪队列中! 因此,队列中的P1,P2,P3,P4,P5将按照时间排队,但是,如果一个进程超过量子时间,反馈将继续发送到较低的队列,因此将被放置在较低的队列中,如果留下不完整的执行!
如下所示,上次包括间隔和开始时间是排他性的,但必须考虑时间间隔: -
1--->10 ms-------P1
10-->17 ms-------P1 // P1 finished execution..........
17-->20 ms-------P2
20-->30 ms-------P2 // P2 sent to 1st lower queue as it's still incomplete
30-->38 ms-------P3 // P3 finished execution..........
38-->40 ms-------P4
40-->50 ms-------P4 // pushed next to P2 in 1st lower queue
50-->60 ms-------P5 // pushed next to P4 in 1st lower queue
现在,第一个较低的队列以16毫秒的时间量程起作用。
60-->82 ms-------P2 // P2 finished execution.........
82-->98 ms-------P4 // P4 sent in 2nd lower queue as it's still incomplete
99->107 ms-------P5 // P5 finished execution..........
现在,第二个较低队列在FCFS算法实现中起作用。
107-->111 ms-------P4 // Finally, P4 finished execution..........
因此,这将是时间量子的甘特图图表= 10毫秒。
如果您有任何疑问,请留下评论!
到达队列1的进程抢占队列2中的进程。(操作系统概念手册,国际学生版,第9版,第216页)
所以,我认为P2在第12秒抢占P1并且上面的建议是不正确的。
链接地址: http://www.djcxy.com/p/14855.html