操作系统种类多样,但功能都相似,操作系统功能主要有处理器管理功能、存储器管理功能、设备管理功能、文件管理功能、网络管理功能和提供用户接口。本章对操作系统主要功能及原理作简单介绍,如有兴趣深入研究,可查阅相关操作系统书籍。
1.处理器管理功能
处理器(Central Processing Unit,CPU)是一台计算机的核心,计算机运行得快不快,跟处理器的性能有很大关系,但是CPU只有一个,该让哪个应用程序使用CPU呢?一个程序不能总占着CPU不放,在什么时间、该怎么样把CPU切换给另一个程序使用呢?怎样分配CPU才能使计算机整体运行得更有效率?怎样分配CPU才能最大化发挥计算机性能?这些都属于操作系统的处理器管理功能。
操作系统引入进程的概念进行处理器管理。进程是操作系统对一个正在运行的程序的一种抽象,是执行起来的程序,是系统进行资源调度和分配的独立单位。把存放在磁盘上的程序看成是一个静止状态,当程序被选中后进入内存,它就成为进程。
现代操作系统支持多任务处理,也就是说,能够对多个进程进行管理。成为进程的程序已经被调入内存,但CPU在某一个时间段只能执行一个进程,那么其他进程就必须处于等待状态。在一般情况下,CPU给每个进程分配时间片并轮流去执行它们。在多数情况下,如果有两个(及以上)进程处于“就绪”状态,要决定哪一个进程被CPU执行,就需要进行选择。一种算法是给每个进程设定优先级,CPU响应优先级高的进程,在同级别的情况下顺序执行;还有一种算法是使得处理器和外设处于同时“忙”的状态,尽可能使系统 “并行”,以提高系统的效率;也有的算法使得每个进程都得到“公平”的响应。
进程在其生存周期内,由于受资源制约,其执行过程是间断的,因此进程状态也是不断变化的。一般来说,进程有3种基本状态,如图2-9所示。
图2-9 进程三个状态及转换
就绪状态表示,进程已经获取了除CPU之外所必需的一切资源,一旦分配到CPU,就可以立即执行。运行状态表示,进程获得了CPU及其他一切所需的资源,正在运行。等待状态表示,由于某种资源得不到满足,进程运行受阻,处于暂停状态,等待分配到所需资源后,再投入运行。
操作系统的处理器管理功能主要体现在对进程的管理上。操作系统管理进程从“创生”到“消亡”整个生存周期过程中的所有活动,包括创建进程、转变进程的状态、执行进程和撤销进程等操作。操作系统的处理器管理功能对于计算机硬件资源的充分利用起着至关重要的作用。
2.存储器管理功能
这里讲的存储器主要是指内存。内存是一个临时存储设备,在处理器执行程序时,用来存放程序和程序处理的数据,计算机上的程序要想被处理器执行,需要先装载到内存中。此时就会出现一些问题,比如,如何将一个应用程序装入内存中运行?如何防止应用程序恶意更改另一个应用程序使用的内存中的内容?内存空间不足时该怎么办?这些都属于操作系统的内存管理功能。
操作系统的内存管理功能主要为进程分配互不发生冲突的内存空间,保护放在内存中的程序和数据不被破坏;同时组织最大限度地共享内存空间,最大限度地提高内存空间利用率;甚至将内存和外存结合起来,为用户提供一个容量比实际内存大得多的虚拟存储空间。
操作系统引入虚拟存储器(Virtual Memory)的概念来进行内存管理。虚拟存储器是一个抽象概念,它为每个进程提供了自己在独占使用内存的假象,每个进程看到的都是一致的虚拟地址空间。虚拟存储器使每个进程都认为自己拥有连续的可用内存,而实际上,它通常被分割成多个物理内存碎片,还有部分存储在外部磁盘存储器上。虚拟存储器这个抽象概念将内存的具体使用细节隐藏起来,比如,应用程序根本不知道自己看到的虚拟地址是怎么映射到实际物理内存地址的,这个映射过程由操作系统来完成,操作系统为应用程序提供统一的内存使用接口而隐藏了具体的内存使用细节。内存管理功能包括内存分配、内存保护、地址映射和内存扩充等功能。操作系统的存储器管理功能使内存的使用变得简单、内存的利用率获得提高、系统安全性获得提高。
3.设备管理功能(www.daowen.com)
输入/输出设备(I/O设备,Input/Output Device)是计算机系统与人或其他系统进行信息交流的重要资源,也是系统中最具多样性和变化性的部分。
I/O设备包括键盘、鼠标、显示器、硬盘、打印机等供输入/输出的设备。I/O设备多种多样,同一种I/O设备也有很多不同的厂家、分不同的型号,不同的型号必然会导致它们有使用细节方面或多或少的不同,用户使用I/O设备如果直接面对这些具体细节,I/O设备使用起来就会很麻烦,同时,如何让CPU和I/O设备协作,以提高系统的整体效率也是一个问题。因此,操作系统顺理成章地负责起了设备管理功能。
操作系统引入文件的概念来进行I/O设备管理。文件就是字节序列,仅此而已。每个I/O设备,包括磁盘、键盘、显示器,甚至网络,都可以视为文件。文件是个简单而精致的概念,它向应用程序提供了一个统一的视角,来看待系统中可能包含的所有各式各样的I/O设备。例如,处理磁盘内容的程序员只要使用操作系统提供的统一接口就可以完成任务,而无须了解具体的磁盘技术。进一步说,同一个程序使用操作系统提供的统一接口便可以使用多种磁盘技术,而无须关心磁盘技术的具体内容。
操作系统的I/O设备管理功能使I/O设备的使用变得简单、可靠而有效率,它为应用程序提供简单一致的机制来控制复杂而又通常大相径庭的低级硬件设备。
4.文件管理功能
此处的文件不同于上文的文件,上文的文件是一个技术概念,通过这个概念操作系统为应用程序提供简单一致的机制来控制复杂而又通常大相径庭的低级硬件设备。此处的文件指的是存储在外存上的数据文件。比如一个Word文档、一张图片、一个视频,甚至是一段程序,程序在不运行时存放在外存上,运行时才由操作系统装入内存,然后由CPU执行其中的代码。操作系统要具备文件管理功能,对存放在外存上的大量文件进行有效的管理,以方便用户操作使用这些文件,并保证文件内容的安全。
文件管理功能主要包括文件存储空间管理、目录管理、文件的读写管理、文件的安全保护等。文件的存储空间管理指的是,建立一个新文件时,系统要为其分配相应的存储空间,删除一个文件时,系统要及时回收其所占用的存储空间;文件的目录管理主要任务是为每个文件建立目录项,并对目录项进行管理,从而有效提高文件的操作效率;文件的读写管理就是根据用户的请求,从文件中读出数据或将数据写入文件;文件的安全保护主要任务是防止文件内容被非法读取和篡改,保证文件的安全。
5.网络与通信管理功能
随着计算机网络的快速发展与普及,操作系统要具备网络与通信管理功能,以保证网络功能的正常、高效实现,主要包括资源管理、通信管理和网络管理等。资源管理要保证网络资源的共享,管理用户对资源的访问,保证信息资源的安全性和完整性。通信管理就是通过通信软件,按照通信协议的规定,完成网络上计算机之间的信息传送。网络管理就是保证网络的安全、高效运行,并对出现的网络故障有合适的应对技术,包括故障管理、安全管理、性能管理、日志管理和配置管理等。
6.用户接口
为了方便用户使用操作系统,操作系统应向用户提供友好的接口。
操作系统提供的接口包括命令接口、图形接口和程序接口。用户通过命令接口向计算机发出命令以实现相应的功能。但是命令接口要求用户能熟记各种命令的名字和格式,并严格按照规定的格式输入命令,这既不方便又费时间,于是图形接口便应运而生。图形接口使用用户非常容易识别的各种图标将系统的各项功能、各种应用程序和文件直观、逼真地表示出来,用户不必记命令,直接用鼠标点击即可。程序接口是为用户程序访问系统资源而设置的,是用户程序取得操作系统服务的唯一途径。比如内存分配等操作都由操作系统具体执行,操作系统提供内存分配的程序接口,应用程序使用操作系统提供的接口即可方便快捷又相对安全地使用内存。
用户接口是操作系统需要提供的功能,以方便用户使用计算机。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。