【问题标题】:Understanding the Shortest Job First Algorithm (Non-preemptive)了解最短作业优先算法(非抢占式)
【发布时间】:2017-02-28 16:48:29
【问题描述】:

最短作业优先算法如下图所示:

如果接下来是最短的工作/最短的流程,那么顺序不应该是: P1 → P5 → P3 → P4 → P2 ?因为这是从最低到最高服务时间的顺序。
为什么进程2排在第二位?

我知道如果我们使用突发时间来代替,那将是顺序,但我不知道服务时间和突发时间之间的区别是什么。

任何帮助解释该图形将不胜感激。

【问题讨论】:

    标签: algorithm scheduling job-scheduling


    【解决方案1】:

    问题中的图像遵循正确的顺序,即:

    P1 → P2 → P5 → P3 → P4

    解释:
    P1 到达 time = 0 ,所以会先执行。该进程的服务时间为3。所以这个过程在time=3完成。

    time=3,只有一个进程到达,即P2。所有其他进程稍后到达。所以现在执行这个过程。这个进程的服务时间是6,所以这个进程在time=3+6=9完成。

    现在在time=9,有P3P4P5三个进程(分别到达time= 4, 6 and 8)。由于P5的服务时间是2,比P3P4的服务时间最短,所以P5现在执行,在time=9+2=11完成。

    time=11,我们有两个进程,分别是P3P4(分别到达time= 4 and 6)。由于P3的服务时间为4,比P4的服务时间短,所以P4现在执行,在time= 11+4=15完成

    time=15,我们只有一个进程,即P4。所以现在执行。由于这个进程的服务时间是5,所以它在time = 15+5 = 20完成

    【讨论】:

    • 我想混乱的根源是图像显示了最终的时间表,而不是新工作的到达时间和持续时间。例如,作业 4 在 6 点进入,但仅在 15 点安排。
    猜你喜欢
    • 2023-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-22
    • 1970-01-01
    相关资源
    最近更新 更多