📅  最后修改于: 2020-12-14 01:47:17             🧑  作者: Mango
该算法是SJF调度的抢先版本。在SRTF中,可以在一定时间后停止该过程的执行。在每个进程到达时,短期调度程序都会在可用进程列表和正在运行的进程中以最小的突发时间来调度进程。
一旦所有进程在就绪队列中可用,就不会进行抢占,并且该算法将作为SJF调度工作。从执行中删除流程并计划下一个流程时,流程的上下文将保存在流程控制块中。下次执行此过程时,将访问该PCB。
在此示例中,有五个作业P1,P2,P3,P4,P5和P6。它们的到达时间和突发时间在下表中给出。
Process ID | Arrival Time | Burst Time | Completion Time | Turn Around Time | Waiting Time | Response Time |
---|---|---|---|---|---|---|
1 | 0 | 8 | 20 | 20 | 12 | 0 |
2 | 1 | 4 | 10 | 9 | 5 | 1 |
3 | 2 | 2 | 4 | 2 | 0 | 2 |
4 | 3 | 1 | 5 | 2 | 1 | 4 |
5 | 4 | 3 | 13 | 9 | 6 | 10 |
6 | 5 | 2 | 7 | 2 | 0 | 5 |
平均等待时间= 24/6
甘特图是根据表中给出的到达时间和突发时间准备的。
P3和P4的剩余突发时间各为1个单位。由于两者相等,因此将根据其到达时间进行调度。 P3早于P4到达,因此将再次安排。
一旦所有进程到达,就不会进行抢占,并且该算法将作为SJF工作。