选择调度方式和调度算法的若干准则
1.面向用户的准则
(1) 周转时间短。 周转时间是指从作业被提交给系统开始,到作业完成为止的这段时间间隔(称为作业周转时间)。
包括四部分:
1、作业在外存后备队列上等待(作业)调度的时间
2、进程在就绪队列上等待进程调度的时间
3、进程在CPU上执行的时间
4、进程等待I/O操作完成的时间。
(a)周转时间 = 完成时刻 - 提交时刻(到达时间)
= 等待时间 + 运行时间(CPU)
对于进入系统的n个作业而言,平均周转时间T为:
用于衡量不同调度算法对同一作业流的调度性能: 平均周转时间越小,该作业调度算法的性能越好。
b)带权周转时间 W = 作业周转时间T/提供服务时间(CPU) 它能说明作业i的相对等待时间。
平均带权周转时间 :
用于衡量同一调度算法对不同作业流的调度性能(长短任务差别): 平均带权周转时间越小,作业调度算法对该作业流的调度性能越好。
对于批处理系统,主要依据平均周转时间和平均带权周转时间来作为衡量调度算法性能的指标;而对于分时系统和实时系统,外加平均响应时间作为衡量调度算法性能的指标。
(2) 响应时间快。评价分时系统的性能。
响应时间: 是从用户通过键盘提交一个请求开始,直至系统首次产生响应为止的时间。
包括三部分:
1、从键盘输入的请求信息传送到处理机的时间。
2、处理机对请求信息进行处理的时间。
3、响应信息回送到终端显示器的时间。
(3) 截止时间的保证。 评价实时系统。
(4) 优先权准则。 批处理、分时、实时系统中都可遵循。
2.面向系统的准则
系统吞吐量高; 处理机利用率好; 各类资源的平衡利用;
---------------------------------------------------------------------------------------调度算法-----------------------------------------------------------------
一、先来先服务调度算法(FCFS)
算法: 也称为先进先出(FIFO),或严格排队方式。
对于作业调度:从后备作业队列中(按进入的时间顺序排队)选择队首一个或几个作业,调入内存,创建进程,放入就绪队列。 对于进程调度:从就绪队列中选择一个最先进入队列的进程,将CPU分配于它。
适用:进程调度、作业调度
优点: 实现简单
缺点: 没考虑进程的优先级
例1:有四个作业(或进程),他们相应的时间见下表:
作业 |
到达时间 Tin |
服务 时间Tr |
开始时间TS |
结束时间Tc |
周转时间T |
带权周转时间W |
A |
0 |
1 |
0 |