"操作系统作业调度算法及平均周转时间计算"

版权申诉
0 下载量 196 浏览量 更新于2024-03-07 收藏 134KB DOC 举报
本文主要讨论了三个作业采用先来先服务和短作业优先作业调度算法时的平均周转时间,并尝试寻找一种更好的调度算法以优化平均周转时间。首先,对于先来先服务作业调度算法,三个作业的调度顺序分别是1→2→3,完成时间分别为8、11.6、12,平均周转时间为10.53。其次,对于短作业优先作业调度算法,由于作业2和3在作业1完成后已经到达,因此调度顺序为1→3→2,完成时间分别为8、9、13,平均周转时间为10。然后,对于更好的调度算法,可以考虑使用最短剩余时间优先(SRTF)作业调度算法,该算法可以在短作业优先的基础上进一步缩短作业的周转时间。最后,对于SRTF作业调度算法,通过动态调整作业的优先级,可以在一定程度上优化平均周转时间,使其更短。 在先来先服务作业调度算法中,作业的调度顺序是按照作业到达的先后顺序进行调度,即先到达的作业先执行。对于给出的三个作业,它们的开始时间分别为0、0.08、0.52,完成时间分别为8、11.6、12,因此平均周转时间为(8+11.6+12)/3=10.53。这种调度算法很容易实现,但是无法考虑到作业的执行时间,可能导致长作业等待时间过长,从而影响平均周转时间。 而对于短作业优先作业调度算法,作业的调度顺序是按照作业所需CPU时间的大小进行调度,即执行时间最短的作业先执行。在给出的三个作业中,由于作业2的执行时间最短,因此先执行作业2,然后才执行作业3,最后执行作业1,完成时间分别为8、9、13,平均周转时间为(8+9+13)/3=10。这种调度算法可以有效缩短作业的周转时间,但是无法考虑到作业的到达顺序,可能导致部分作业等待时间过长。 针对以上两种调度算法存在的问题,可以考虑使用最短剩余时间优先(SRTF)作业调度算法,该算法在短作业优先的基础上动态调整作业的执行顺序,以最小化作业的剩余执行时间。在SRTF作业调度算法中,系统会不断检查就绪队列中作业的剩余执行时间,并选择剩余执行时间最短的作业来执行。这样可以有效缩短作业的周转时间,提高系统的响应速度。 在SRTF作业调度算法中,对于给出的三个作业,系统会动态调整作业的执行顺序,使剩余执行时间最短的作业得到优先执行。这样可以在一定程度上优化平均周转时间,使其更短。同时,SRTF作业调度算法还可以有效避免长作业等待时间过长的问题,提高系统的执行效率。 综上所述,先来先服务和短作业优先作业调度算法都存在一定的局限性,无法充分考虑到作业的执行时间和到达顺序。而最短剩余时间优先(SRTF)作业调度算法可以在一定程度上优化平均周转时间,提高系统的执行效率。因此,可以考虑使用SRTF作业调度算法来取代先来先服务和短作业优先作业调度算法,以获得更优的调度效果。