2.1.2 操作系统的基本功能

操作系统作为计算机系统的管理者,它的主要功能是对系统所有的软硬件资源进行合理而有效的管理和调度,提高计算机系统的整体性能。一般而言,引入操作系统有两个目的:第一,从用户角度来看,操作系统将裸机改造成一台功能更强、服务质量更高、用户使用起来更加灵活方便、更加安全可靠的虚拟机,使用户无须了解更多有关硬件和软件的细节就能使用计算机,从而提高用户的工作效率;第二,为了合理地使用系统包含的各种软硬件资源,提高整个系统的使用效率。具体地说,操作系统具有处理器管理、存储管理、设备管理、文件管理、作业管理等功能。

1.处理器管理

处理器管理也称进程管理。进程是一个动态的过程,是执行起来的程序,是系统进行资源调度和分配的独立单位。

进程与程序的区别,有以下4点。

①程序是“静止”的,它描述的是静态指令集合及相关的数据结构,所以程序是无生命的;进程是“活动”的,它描述的是程序执行起来的动态行为,所以进程是有生命周期的。

②程序可以脱离机器长期保存,即使不执行的程序也是存在的。而进程是执行着的程序,当程序执行完毕,进程也就不存在了。进程的生命是暂时的。

③程序不具有并发特征,不占用CPU、存储器、输入/输出设备等系统资源,因此不会受到其他程序的制约和影响。进程具有并发性,在并发执行时,由于需要使用CPU、存储器、输入/输出设备等系统资源,因此受到其他进程的制约和影响。

④进程与程序不是一一对应的。一个程序多次执行,可以产生多个不同的进程。一个进程也可以对应多个程序。

进程在其生存周期内,由于受资源制约,其执行过程是间断的,因此进程状态也是不断变化的。一般来说,进程有以下3种基本状态。

①就绪状态。进程已经获取了除CPU之外所必需的一切资源,一旦分配到CPU,就可以立即执行。

②运行状态。进程获得了CPU及其他一切所需的资源,正在运行。

③等待状态。由于某种资源得不到满足,进程运行受阻,处于暂停状态,等待分配到所需资源后,再投入运行。

操作系统对进程的管理主要体现在调度和管理进程从“创生”到“消亡”整个生存周期过程中的所有活动,包括创建进程、转变进程的状态、执行进程和撤销进程等操作。

2.存储管理

存储器是计算机系统中存放各种信息的主要场所,因而是系统的关键资源之一,能否合理、有效地使用这种资源,在很大程度上影响到整个计算机系统的性能。操作系统的存储管理主要是对内存的管理。除了为各个作业及进程分配互不发生冲突的内存空间,保护放在内存中的程序和数据不被破坏外,还要组织最大限度的共享内存空间,甚至将内存和外存结合起来,为用户提供一个容量比实际内存大得多的虚拟存储空间。

3.设备管理

外部设备是计算机系统中完成和人及其他系统间进行信息交流的重要资源,也是系统中最具多样性和变化性的部分。设备管理是负责对接入本计算机系统的所有外部设备进行管理,主要功能有设备分配、设备驱动、缓冲管理、数据传输控制、中断控制、故障处理等。常采用缓冲、中断、通道、虚拟设备等技术尽可能地使外部设备和主机并行工作,解决快速CPU与慢速外部设备的矛盾,使用户不必去涉及具体设备的物理特性和具体控制命令就能方便、灵活地使用这些设备。

4.文件管理

计算机中存放着成千上万的文件,这些文件保存在外存中,但其处理却是在内存中进行的。对文件的组织管理和操作都是由被称之为文件系统的软件来完成的。文件系统由文件、管理文件的软件和相应的数据结构组成。文件管理支持文件的建立、存储、检索、调用、修改等操作,解决文件的共享、保密、保护等问题,并提供方便的用户使用界面,使用户能实现对文件的按名存取,而不必关心文件在磁盘上的存放细节。

5.作业管理

作业管理是为处理器管理做准备的,包括对作业的组织、调度和运行控制。我们将一次解题过程中或一个事务处理过程中要求计算机系统所完成的工作的集合,包括要执行的全部程序模块和需要处理的全部数据,称为一个作业(Job)。

作业有3个状态:当作业被输入到系统的后备存储器中,并建立了作业控制模块(Job Control Block,JCB)时,称其处于后备态;作业被作业调度程序选中并为它分配了必要的资源,建立了一组相应的进程时,称其处于运行态;作业正常完成或因程序出错等而被终止运行时,称其进入完成态。

CPU是整个计算机系统中较昂贵的资源,它的速度要比其他硬件快得多,所以操作系统要采用各种方式充分利用它的处理能力,组织多个作业同时运行,主要解决对处理器的调度、冲突处理和资源回收等问题。