返回

操作系统概念、特征与基本功能

发布时间:2023-09-07 02:53:09 153


操作系统的概念



计算机系统自下而上可大致分为四部分: 硬件操作系统应用程序用户 (这里的划分与计算机组成原理中的分层不同)。操作系统管理各种计算机硬件,为应用程序提供基础,并充当计算机硬件与用户之间的中介。

操作系统(Operating System,OS) 是指控制和管理整个计算机系统的硬件与软件资源,合理地组织、调度计算机的工作与资源的分配,进而为用户和其他软件提供方便接口与环境的程序集合。操作系统是计算机系统中最基本的系统软件

1. 用户观点

操作系统的用户观点即根据用户所使用计算机的不同而设计不同类型的操作系统。

2. 系统观点(资源管理的观点)

从资源管理的角度来看,操作系统是计算机系统的资源管理程序。在计算机系统中有两类资源: 硬件资源软件资源 。按其作用又可以将它们分为四大类资源: 处理器存储器外设信息(程序和数据) 。这四类资源构成了操作系统本身和用户作业赖以活动的物质基础和工作环境。它们的使用方法和管理策略决定了整个操作系统的规模、类型、功能和实现。与上述四类资源相对应,操作系统可被划分成处理器管理、存储器管理、设备管理和信息管理(即文件系统),并分别进行分析研究。由此,可以用资源管理的观点组织操作系统的有关内容。

3. 进程观点

这种观点把操作系统看作由若干个可以独立运行的程序和一个对这些程序进行协调的核心所组成的。这些运行的程序称为进程,每个进程都完成某一项特定任务(如控制用户作业的运行,处理某个设备的输入/输出...)。而操作系统的核心则是控制和协调这些进程的运行,解决进程之间的通信;它从系统各部分以并发工作为出发点,考虑管理任务的分割和相互之间的关系,通过进程之间的通信来解决共享资源时所带来的竞争问题。通常, 进程 可以分为 用户进程系统进程 两大类,由这两类进程在核心控制下的协调运行来完成用户的要求。

4. 虚拟机观点

虚拟机的观点也称为机器扩充的观点。从这一观点来看,操作系统为用户使用计算机提供了许多服务功能和良好的工作环境。用户不再直接使用硬件机器(称为 裸机 ),而是通过操作系统来控制和使用计算机。计算机被扩充为功能更强大、使用更加方便的虚拟计算机。从功能分解的角度出发,考虑操作系统的结构,将操作系统分为若干个层次,每一层次完成特定的功能,从而构成一个虚拟机,并为上一层提供支持,构成它的运行环境。通过逐层的功能扩充,最终完成操作系统虚拟机,从而为用户提供全套的服务,满足用户的要求。


操作系统的特征




1. 并发(Concurrence)

并发是指两个或多个事件在 同一时间间隔内 发生。操作系统的并发性是指计算机系统中同时存在多个运行的程序,因此它具有处理和调度多个程序同时执行的能力。在操作系统中,引入进程的目的是使程序能并发执行。

在多道程序环境下,一段时间内,宏观上有多道程序在同时执行,而在每个时刻,单处理机环境下实际仅能有一道程序执行,因此微观上这些程序仍是分时交替执行的。操作系统的并发性是通过分时得以实现的。

注意,并行性是指系统具有同时进行运算或操作的特性,在同一时刻能完成两种或两种以上的工作。并行性需要有相关硬件的支持,如多流水线或多处理机硬件环境。

并行性是指两个或多个事件在同一时刻发生;而并发性是指两个或多个事件在同一时间间隔内发生。

并发和并行的例子:如果你在18:00-18:10看视频,在18:11-18:20吃晚饭,在18:21-18:30看视频,在18:00-18:30这段时间内吃晚饭和看视频两种行为就是并发执行的;但如果你在18:00-18:30这段时间内边吃晚饭边看视频,那么这两个行为就是并行执行的。

2. 共享(Sharing)

资源共享即共享,是指系统中的资源可供内存中多个并发执行的进程共同使用。根据资源性质的不同,可将资源共享方式分为两种:

(1)互斥共享方式

系统中可供共享的某些资源,如打印机、某些变量、队列等一段时间内只能供一个作业使用的资源,只有当前作业使用完毕并释放后,才能被其他作业使用。而把在一段时间内只允许一个进程访问的资源称为 临界资源独占资源 。计算机系统中的大多数物理设备及某些软件中所用的栈、变量和表格,都属于临界资源,它们都要求被互斥地共享。

(2)同时访问方式

系统中的另一类资源,如磁盘、可重入代码等,可以供多个作业同时访问。虽然这种“同时”是指宏观上的“同时”,微观上可能是作业交替访问该资源,但作业访问资源的顺序不会影响访问的结果。

并发和共享是操作系统两个最基本的特征,两者之间互为存在的条件:

  • 资源共享是以程序的并发为条件的,若系统不允许程序并发执行,则自然不存在资源共享问题;
  • 若系统不能对资源共享实施有效的管理,则必将影响到程序的并发执行,甚至根本无法并发执行。

3. 虚拟(Virtual)

虚拟是指把一个物理上的实体变为若干逻辑上的对应物。物理实体(前者)是实的,即实际存在的;而后者是虚的,是用户感觉上的事物。用于实现虚拟的技术,称为虚拟技术。操作系统中利用了多种虚拟技术来实现虚拟处理器、虚拟内存和虚拟外部设备等。虚拟处理器技术是通过多道程序设计技术,采用让多道程序并发执行的方法,来分时使用个处理器的。此时,虽然只有一个处理器,但它能同时为多个用户服务,使每个终端用户都感觉有一个中央处理器(CPU)在专门为它服务。利用多道程序设计技术把一个物理上的CPU虚拟为多个逻辑上的CPU,称为虚拟处理器。

类似地,可以采用虚拟存储器技术将一台机器的物理存储器变为虚拟存储器,以便从逻辑上扩充存储器的容量。当然,这时用户所感觉到的内存容量是虚的。我们把用户感觉到(但实际不存在)的存储器称为虚拟存储器。

还可采用虚拟设备技术将一台物理IO设备虚拟为多台逻辑上的IO设备,并允许每个用户占用一台逻辑上的IO设备,使原来仅允许在一段时间内由一个用户访问的设备(即临界资源)变为在一段时间内允许多个用户同时访问的共享设备。因此,操作系统的虚拟技术可归纳为: 时分复用技术 ,如处理器的分时共享; 空分复用技术 ,如虚拟存储器。

在操作系统中,虚拟是指把一个物理上的实体变为若干个逻辑上的对应物,前者是实际存在的,后者是虚拟的,这只是用户的一种感觉。例如,在操作系统中引入多道程序设计技术后,虽然只有一个CPU,每次只能执行一道程序,但通过分时使用,在一段时间间隔内宏观上这台处理器能同时运行多道程序。它给用户的感觉是每道程序都有一个CPU为其服务。也就是说,多道程序设计技术可以把一台物理上的CPU虚拟为多台逻辑上的CPU。此外还有虚拟存储器(从逻辑上扩充存储器的容量)、虚拟设备(独占设备变为共享设备)等技术。

4. 异步(Asynchronism)

多道程序环境允许多个程序并发执行,但由于资源等因素的限制,进程的执行并不是一贯到底的,而是“走走停停”的,它以不可预知的速度向前推进,这就是进程的异步性。

异步性使得操作系统运行在一种随机的环境下,可能导致进程产生与时间有关的错误(就像对全局变量的访问顺序不当会导致程序出错一样)。然而,只要运行环境相同,操作系统就须保证多次运行进程后都能获得相同的结果。


操作系统的基本功能




1. 处理器管理

处理器管理的主要任务是对处理器的分配和运行实施有效的管理。在多道程序环境下,处理器的分配和运行是以进程为基本单位的,因此对处理器的管理可归结为对进程的管理。

进程管理应实现下述主要功能:进程控制:负责进程的创建、撤销及状态转换。进程同步:对并发执行的进程进行协调。进程通信:负责完成进程间的信息交换。进程调度:按一定算法进行处理器分配。

2. 存储器管理

存储器管理的主要任务是对内存进行分配、保护和扩充。

存储器管理应实现下述主要功能:内存分配:按一定的策略为每道程序分配内存。内存保护:保证各程序在自己的内存区域内运行而不相互干扰。内存扩充:为允许大型作业或多作业的运行,必须借助虚拟存储技术去获得增加内存的效果。

3. 设备管理

设备管理的主要任务是对计算机系统内的所有设备实施有效管理。

设备管理应具有下述功能:设备分配:根据一定的设备分配原则对设备进行分配。为了使设备与主机并行工作,还需采用缓冲技术和虚拟技术。设备传输控制:实现物理的输入/输出操作,即启动设备、中断处理、结東处理等。设备独立性:即用户程序中的设备与实际使用的物理设备无关。

4. 文件管理

操作系统中负责信息管理的部分称为文件系统,因此称为文件管理。文件管理的主要任务就是有效地支持文件的存储、检索和修改等操作,解决文件的共享、保密和保护问题。

文件管理应实现下述功能:文件存储空间的管理:负责对文件存储空间进行管理,包括存储空间的分配与回收等功能。目录管理:目录是为方便文件管理而设置的数据结构,它能提供按名存取的功能。文件操作管理:实现文件的操作,负责完成数据的读写。文件保护:提供文件保护功能,防止文件遭到破坏。

5. 用户接口

通常,操作系统以如下三种接方式提供给用户使用:

  • 命令接口:提供一组命令供用户直接或间接控制自己的作业。主要有两种命令接口控制方式:
  • 联机命令接口又称交互式命令接口,适用于分时或实时操作系统,它由一组键盘操作命令组成,用户通过控制台或终端输入操作命令,向系统提出各种服务要求,用户每输入完一条命令,控制权就转入操作系统的命令解释程序,然后由命令解释程序对输入的命令解释并执行,完成执行的功能。之后控制权又转回到控制台或终端,此时用户又可以输入下一条命令。
  • 脱机命令接口又称批处理命令接口,即适用于批处理系统,它由一组作业控制命令(或称作业控制语句)组成,脱机用户不能直接干预作业的运行,应事先用相应的作业控制命令写成一份作业操作说明书,连同作业一起提交给系统。当系统调度到该作业时,由系统中的命令解释程序对作业说明书上的命令或控制语句逐条解释执行从而间接地控制作业的运行。
  • 程序接口:也称为系统调用,是程序级的接口,由系统提供一组系统调用命令供用户程序和其他系统程序调用。用户在程序中可以直接使用这组系统调用命令向操作系统提出各种服务要求,如使用外设、申请分配内存、磁盘文件的操作等。
  • 图形接口:近年来出现的图形接口(也称图形界面)是联机命令接口的图形化。


参考文献:

[1] 王道论坛组, 2021年操作系统考研复习指导, 北京:电子工业出版社, 2020.

[2] 刘泱 等, 操作系统高分笔记:2022版:天勤第10版, 北京:机械工业出版社, 2020.




特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(0)
按点赞数排序
用户头像
精选文章
thumb 中国研究员首次曝光美国国安局顶级后门—“方程式组织”
thumb 俄乌线上战争,网络攻击弥漫着数字硝烟
thumb 从网络安全角度了解俄罗斯入侵乌克兰的相关事件时间线
下一篇
Go 语言系列12:Map 2023-09-06 23:54:36