他暗念她四年,毕业时,终于鼓起勇气,问他能不能送她去车站。她答应了,带着惯常的懒散与随意。“没落什么东西吧。”他问。“落下了什么,就归你好了。”她心不在焉地说。一路上,他恍恍惚惚,几次欲言又止。车要开了,他突然狠狠搂住她,把手里的包甩到了车上,“喂,包,你把主人落下了!”
在躲到程序环境下,一个作业从提交到完成通常都要经历多级调度,比如高级调度、低级调、中级调度等,处理机调度算法的优劣直接影响到整个系统的性能。
1、 调度的层次
a) 作业调度:
i. 作业调度的定义:又称宏观调度、高级调度或长程调度,主要任务是按一定的原则从外存上处于后备状态的作业中选择一个或多个,给它们分配内存、输入输出设备等必要的资源,并建立相应的进程,以使该作业具有获得竞争处理机的权利<运行频率低,通常几分钟一次>;
b) 进程调度:
i. 进程调度的定义:又称微观调度、低级调度或短程调度,主要任务是按某种策略和方法从就绪队列中选取一个进程,将处理机分配给它<运行频率高,一般几十毫秒一次>;
c) 交换调度:
i. 交换调度的定义:又称中级调度或中程调度,主要任务是按照给定的原则和策略,将处于外存对换区中又具备运行条件的进程调入内存,或将处于内存的暂时不能运行的进程交换到外存对换区<频率介于进程调度和作业调度中间>;
2、 调度的性能
a) 系统设计的目标
i. 系统的处理能力高:使系统每天运行尽可能多的作业
ii. 系统资源利用充分:使处理机保持忙碌状态,使设备保持忙碌状态,以达到充分利用资源的目的
iii. 算法对所有的作业公平合理:使所有用户感到满意。
b) 确定调度算法的因素
i. 设计目标:选择的调度算法应与系统的总体设计目标一致;
ii. 资源使用的均衡性:使输入输出繁忙的作业与CPU繁忙的作业搭配运行;
iii. 平衡系统和用户的要求:使系统和用户能够达到较高的平衡要求。
c) 调度算法的准则
i. CPU利用率:CPU的利用率是评价调度算法的重要指标
ii. 系统吞吐量:表示单位时间内CPU完成作业的数量
iii. 周转时间:表示完成一个作业需要花费的时间
1. 周转时间:是指从作业提交到作业完成之间的时间间隔;
T=T2-T1(T2是某一个作业完成时间,T1是某一个作业提交时间)
2. 平均周转时间:是指多个作业周转时间的平均值;
T=(T1+T2…+Tn)/n(Tn是指n个作业的周转时间)
3. 带权周转时间:是指作业周转时间与作业实际运行时间的比;
W=W1/W2(W1是某一作业的周转时间,W2是某一作业的实际运行时间)
4. 平均带权周转时间:是指多个作业带权周转时间的平均值。
W=(W1+W2..+Wn)(Wn是指n个作业的带权周转时间)
iv. 响应时间:指从用户提交请求到系统首次产生响应所用的时间。
3、 作业调度
a) 作业的定义:是用户在一次解题或一个事务处理过程中要求计算机系统所做工作的集合,包括用户程序、数据以及命令等。
b) 作业调度的定义:如上已给出
c) 作业的状态
i. 提交状态:用户作业由输入设备向系统外存输入时作业所处的状态
ii. 收容状态:系统为外存的作业建立作业控制块,并把它插入到后备作业队列中等待调度运行时所处的状态
iii. 运行状态:当作业调度程序选中一个作业,为它分配了必要的资源并建立了相应的进程之后所处的状态
iv. 完成状态:当作业正常运行结束或因发生错误而终止运行时所处的状态
d) 作业控制块(JCB)的主要内容
i. 资源要求:是指作业运行所需要的资源情况,包括运行时间,最迟完成时间,内存量,外设类型以及数量等
ii. 资源使用情况:包括作业进入系统的时间,开始运行时间,已运行时间,内存地址,外设台号等
iii. 作业的控制方式:是联机作业控制还是脱机作业控制
iv. 作业的类型:是终端型还是批量型,是I/O繁忙型还是CPU繁忙型
v. 作业的优先级:指作业进入系统运行的优先级别
vi. 作业名/号:作业的名称和唯一标识号
vii. 作业状态:作业运行的当前状态
e) 作业调度程序的主要工作
i. 记录进入系统的各个作业情况
ii. 从后备作业队列中挑选一个作业投入执行
iii. 为被选中的作业做好执行前的准备工作
iv. 在作业运行结束或过程中因某种原因需要撤离时,完成善后工作
零测试