一、操作系统的本质也是一个软件系统。
操作系统是计算机系统中的一个系统软件,它是这样一些程序模块的集合:它们能有效地组织和管理计算机系统中的硬件和软件资源,合理地组织计算机工作流程,控制程序的执行,并向用户提供各种服务功能,使得用户能够灵活、方便、有效地使用计算机,并使整个计算机系统能高效地运行。
1、从操作系统的表现形式上看,操作系统是一个大型软件程序。
(1)、操作系统包含大量的为实现操作系统各项功能的软件,系统软件程序从设计和结构角度看,他们通常是模块化。
(2)、操作系统是带有内核的,其内核也是由各种程序模块组成。
(3)、操作系统本身是层次化的,每个层次的程序通常也是模块化的
2、操作系统的任务之一是组织和管理计算机系统中硬件及软件资源。
(1)、 “有效” : 是指操作系统在管理计算机资源时要考虑到系统运行的效率和资源的利用率,要尽可能提高中央处理器的利用率,让他尽可能少的空转,应该保证访问效能的前提下尽可能有效利用其它资源,例如减少对内存、硬盘空间的浪费等。
(2)、“合理”: 操作系统要“公平”对待不同的用户程序,保证系统不发生“死锁”和“饥饿”的现象。
(3)、“方便” : 操作系统的人机界面要考虑到用户使用界面和程序编程接口两个方面的易用性、易学性和易维护性。
二、操作系统的功能主要包括: 进程管理(处理器管理)、存储管理、文件管理、作业管理和设备管理。
1、进程管理
进程管理的实质是对中央处理器的管理,所以进程管理往往又称之为处理器管理。处理器是计算机系统中最宝贵的硬件资源,为了提高资源的利用率,现代操作系统都采用多道程序技术。
操作系统对其作业的处理方式: 批处理方式、分时处理方式和实时处理方式。
进程管理主要包括进程控制、进程同步、进程间通信和进程调度等几个方面。其中进程控制主要处理进程的创建、状态转换、进程撤销以及相关的进程资源的分配和回收等事务;进程同步主要是处理进程之间的关系,包括进程的同步与互斥;进程间通讯主要是处理相互协作进程之间信息的交换问题;进程调度则是按照一定的算法从就绪队列中挑选一个进程在处理器中真正执行它。
(1)进程控制
在多道程序环境下,进程是操作系统进行资源分配的单位。在进程创建时,系统需要为进程分配各种资源,例如内存、外设等;在进程退出时,系统要从进程空间中回收被分配给它的资源。进程控制主要任务是创建进程、撤销结束的进程以及控制进程运行时候的各种状态转换。
(2)进程同步
多个程序的执行是并发的,它们以异步的方式运行,它的执行进度也是不可预知的。为了使进程能有条不紊地运行,操作系统提供进程同步机制,以协调进程执行。
协调的方式: 互斥与同步。
互斥是指多个进程对临界资源访问时采用互斥的形式;最简单的实现互斥的方法就是给资源加锁,并提供操纵锁变量的原语。包括开锁和关锁原语。所谓原语就是指具有某个功能、运行时具有“原子性”的小段程序。原子性保证这一段代码要么全部执行要么全部不起作用,即这一操作不可以被进一步分割或者打断。
同步是指相互协作共同完成任务的进程之间,用同步机制协调他们之间的执行顺序。
(3)进程间通讯
进程间通讯主要发生在相互协作的进程之间。既然需要协作,那么协作的进程之间就存在着信息或者数据的交换。
(4)进程调度
调度又称处理器调度,通常包括线程调度、进程调度和作业调度等
2、存储管理
存储管理的任务是管理计算机内存的资源。
存储管理的三个方面的任务:
(1)内存的分配与回收
操作系统要为每个进程分配内存空间,在分配过程中,还要尽可能地提高内存资源的使用效能。对于已经退出运行的进程,操作系统还要把它加以回收,重新使用。
空间碎片: 内存的分配与回收算法中存在缺陷造成的。
(2)存储保护
内存是供多个程序共享的,从理论上讲,每个程序都应该在分配给自己的内存区中运行,但是实际上,必须考虑到某个程序会发生越界的情况。
(3)内存扩充
物理内存的大小是有限的,各种程序对运行空间的需求经常超出实际的内存大小。内存扩充功能就是借助虚拟存储技术在逻辑上增加进程运行空间的大小,这个大小比实际的物理内存要大得多。
3、文件管理
在计算机系统中的信息资源(程序和数据)是以文件的形式存储在外存储器上的,需要时在装入内存。
文件管理的任务是有效得支持文件的存储、检索和修改等操作,解决文件的共享、保密和保护问题,以方便用户安全地访问文件。
(1)文件存储空间的管理
任何文件存储在外存储器上,都需要以某种形式占据外存储器的空间。
文件系统设置专门的数据结构记录文件存储空间的使用情况。
为了提高空间的利用率,存储空间的分配通常采用离散分配方式,以512B或者几KB的块为基本单位进行分配。
(2)目录管理
目录管理的主要任务就是给出组织文件的方法,它为每个文件建立目录项,并对众多的目录项加以有效的组织,以便为用户提供方便的按名存取。
(3)文件系统的安全性
安全性包括文件的读取权限管理以及存取控制,用于防止未经核准的用户存取文件,防止越权访问文件,防止使用不正确的方式访问文件。
4、设备管理
设备管理是指计算机系统中除了处理器和内存以外的所以输入、输出设备的管理。
在操作系统中,为了提高设备的使用效率和整个系统的运行速度,需要采用一系列的技术,包括中断技术、通道技术、虚拟设备技术和缓存技术等,尽可能发挥设备和主机的并行能力。
5、用户接口
从用户的观点来看,操作系统是用户和计算机之间的接口。因此,接口管理的任务是为用户提供一个使用系统的良好环境,使用户能有效地组织自己的工作流程,并使整个系统能高效运行。
该文章转载自: http://www.fzydk.com/category/20191001