处理机调度-作业调度
作业调度的主要目的-两个转变
1.完成作业从后备状态到执行状态的转变
2.从执行状态到完成状态的转变
作业调度的主要功能
记录系统中各作业的状况
为了从若干的作业中挑选出一个作业来投入运行,并且在执行的时候对其进行管理,它就必须掌握作业在各个状态,包括执行阶段的有关情况。
为了记录这些状态信息,系统为每一个作业创建了一个作业控制块(JCB)来记录这些信息。
JCB块的创建与释放
1.系统为每个作业建立一个作业控制块JCB记录这些有关信息
2.当作业执行完毕进入完成状态之后,系统撤消其JCB而释放有关资源并撤消作业
JCB块内包含的内容
1.作业名由用户提供并由系统将其转换为系统可识别的作业标识符
2.作业类型指该作业属于计算型(要求CPU时间多)、管理型(要求输入/输出量大),或图形设计型(要求高速图形显示)等
3.资源要求包括:该作业估计执行时间、要求的最迟完成时间、要求的内存量和外存量、要求的外设类型及台数以及要求的软件支持工具库函数等,资源要求均由用户提供
4.资源使用情况包括:作业进入系统时间、开始执行时间、已执行时间、内存地址、外设台数等
5.优先级用来决定该作业的调度次序,可以由用户给定,也可以由系统动态计算产生
6.当前状态指该作业当前所处的状态。只有当作业处于后备状态时,该作业才可以被调度
从后备队列中挑选出一部分作业投入执行
作业调度程序根据选定的调度算法,从后备作业队列中挑选出若干作业去投入执行
为被选中作业做好执行前的准备工作
作业调度程序为选中的作业建立相应的进程,并为这些进程分配它们所需要的系统资源,如分配给它们内存、外存、外设等
在作业执行结束时做善后处理工作
1.主要是输出作业管理信息,例如执行时间等
2.回收该作业所占用的资源,撤消与该作业有关的全部进程和该作业的作业控制块等
作业调度目标与性能衡量
作业调度目标
作业调度最主要的功能是从后备作业队列中选取一批作业进入执行状态,具体怎么选,是有选取的原则和目标的:
1.对所有作业应该是公平合理的;
2.应使设备有高的利用率;
3.每天执行尽可能多的作业;
4.有快的响应时间
性能衡量
对不同系统有不同的标准
批处理系统:主要用于计算,对于作业的周转时间要求较高。因此,作业的平均周转时间或平均带权周转时间,被作为衡量调度算法优劣的标准
分时系统和实时系统:外加平均响应时间作为衡量调度策略优劣的标准
衡量指标
周转时间
Tei为作业i的完成时间,Tsi为作业的提交时间。
作业i的周转时间Ti为:Ti=Tei-Tsi
作业的周转时间说明了该作业在系统内停留的时间,包含等待时间和执行时间,即:Ti=Twi+Tr
Twi指作业i由后备状态到执行状态的等待时间,它不包括作业进入执行状态后的等待时间
平均周转时间
对于被测定作业流含有的n(n ≥ 1)个作业来说,其平均周转时间为:
带权周转时间
带权周转时间进一步反映了调度性能,是作业周转时间与作业执行时间的比:Wi=Ti/Tri
分时系统,除了要保证系统吞吐量大、资源利用率高之外,还应保证有用户能够容忍的响应时间,所以采用带权周转时间为指标