第二章 操作系统基础 第一节 操作系统概述
文件的完整性就是要确保在任何情况下不会丢失文件,否则可能会造成不可弥补的损失。文件系统主要采用转储的方法,即定时将计算机内的文件转储到外部介质上,如磁带、磁盘等。不少重要的系统,每天都要做转储工作,以备突然性灾难性事故后仍能保存文件最新的备份。转储又有全量转储和增量转储两种方法,后者只是将上次转储后复化过的文件加以转储,这种工作量小,但恢复比较麻烦。
5)作业管理
作业管理是操作系统的最外层,主要负责将用户提交的作业,逐个送入机器,作业再分解成内部执行的进程竞争CPU运行。对于分时系统的作业,是由用户直接在终端上联机进入,作业一级的管理不是很明显。而批处理系统的作业是由用户将程序、数据和作业说明书提交机房,再装入机器运行的。故对作业来说,除了进程运行的三个基本状态外,还有作业的提交,准备和完成状态。实际系统中通常是多道作业并行运行,故处于后备状态的作业不止一个。如何在用户提交的许多作业中选择若干个作业投入运行,也有一个调度问题,称为作业调度或高级调度。作业调度的策略与进程调度有关但不全相符,常用的作业调度算法有:
(1)先到先服务(FCFS):严格按提交次序执行。
(2)资源搭配法:将要求不同类型资源的作业搭配运行,如将计算量大的作业和输入输出量大的作业,因分别占用CPU和I/O设备量大,搭配着运行可充分发挥各设备的作用。
(3)最高响应比优先法:计算或给定作业的等待时间和运行时间,选择等待时间/执行时间比例高的先进入,可见是兼顾了短作业和长作业的响应时间。
(4)多队列循环法:可将不同类型的作业,如长作业、短作业和使用紧缺资源的作业,各自排成队列,可在各队列中各选一个作业进入。
类似的算法还可有好多,系统可按响应时间,负荷均衡,吞吐量和优先级别等的不同要求选择不同的算法。
分时系统使用的终端命令语言与批处理系统中使用的作业控制语言有很大的区别。前者是在终端上打入的交互式命令,并能对系统的动作及时作出响应;后者编制的作业说明书一旦提交就无法对作业运行进行更多的控制,这就不仅要求作业控制语言功能更强、更复杂,而且对作业说明书的编写要求较高,要包括计账信息、调度信息、输入输出信息和过程信息等。





