开学好几天了,今天讲的是操作系统中的作业调度系统初窥。
我用的教材是《操作系统:精髓与设计原理》
从简单单道批处理系统到多道批处理系统。后者为了更充分地利用CPU和I/O接口设备而诞生的系统。
多道程序设计的概念
多道程序设计是指允许多个程序同时进入一个计算机系统的主存储器并启动进行计算的方法。 多道批处理系统中,用户提交的作业都存放在外存中,并形成队列,这个队列称为"后备队列;然后作业调度程序按照作业调度算法将若干作业调入内存,CPU同时执行,以达到CPU和资源的共享,提高资源的利用率和系统的吞吐量的目的。
多道批处理系统的特征
多道性。在内存中可同时驻留多道程序,并允许它们并发执行,从而有效地提高了资源的利用率和系统的吞吐量。
无序性。多个作业完成的先后顺序与它们进入内存的顺序之间没有严格的对应关系。
调度性。作业提交给系统开始直到完成,需要经过作业调度和进程调度。
多道批处理系统的优缺点
优点:资源利用率高,由于内存中装入了多道程序,使资源一直处于使用状态,从而使资源得到了充分的利用;系统吞吐量大,由于CPU和其他资源一直保持"使用"状态,仅当作业完成或者其他原因时才会进行切换,所以系统开销比较小,吞吐量比较大。从下面的两个例子可以看出系统的优点。
缺点:平均运转周期较长,作业的周转时间是指从作业进入系统开始到完成并推出系统经历的时间,由于作业在外存中要形成"后备队列",进而内存有优先顺序,因而作业可能很长时间不能运行,所以周期较长;无交互能力,当作业提交给系统后,用户不能再与作业交互,无法修改或者调试。
作业:在一个多道批处理系统中有4个作业,名为A,B,C,D
A在执行1秒后,请求I/O接口,3秒后结束,A共需5秒。
B在执行1秒后,请求I/O接口,2秒后结束,B共需4秒。
C共需5秒。
D在执行2秒后,请求I/O接口,2秒后结束,D共需7秒。
按照ABCDABCD……的顺序执行 ,画出时间轴图。