操作系统中的周转时间是指 从作业被提交给系统开始,到作业完成为止的这段时间间隔。它包括以下四个部分:
作业在外存后备队列上等待作业调度的时间;
进程在就绪队列上等待进程调度的时间;
进程在CPU上执行的时间;
进程等待I/O操作完成的时间。
周转时间的计算方法如下:
周转时间= 完成时间- 到达时间。
平均周转时间= 周转时间/ 进程个数。
平均带权周转时间= (周转时间 / 服务时间)/ 进程个数。
在批处理系统中,求平均周转时间时,可以应用于不同的调度算法,如先来先服务(FCFS)、短作业优先(SJF)、优先级调度算法以及高响应比优先调度算法中。
例如,对于FCFS算法,假设我们有以下四个作业同时到达系统并立即进入调度:
作业1:所需CPU时间 = 9,到达时间 = 0,完成时间 = 9
作业2:所需CPU时间 = 4,到达时间 = 0,完成时间 = 4
作业3:所需CPU时间 = 10,到达时间 = 0,完成时间 = 10
作业4:所需CPU时间 = 8,到达时间 = 0,完成时间 = 8
根据FCFS调度算法,调度顺序为2, 4, 1, 3。平均作业周转时间 T 和平均带权作业周转时间 W 分别为:
平均作业周转时间 T = (4 + 12 + 21 + 31) / 4 = 17
平均带权作业周转时间 W = (4/4 + 12/8 + 21/9 + 31/10) / 4 = 1.98
总结:
周转时间 = 完成时间 - 到达时间
平均周转时间 = 周转时间 / 进程个数
平均带权周转时间 = (周转时间 / 服务时间) / 进程个数
这些公式和计算方法可以帮助我们评估不同调度算法在操作系统中的性能表现。