文章目录
- 操作系统的概念(定义)
- 操作系统的目标和功能
- 操作系统作为计算机系统资源的管理者
- 操作系统向上层提供方便易用的服务
- 命令接口
- 程序接口
- 操作系统作为最接近硬件的层次
- 操作系统的特征(4个)
- 并发
- 共享
- 互斥共享方式
- 同时共享方式
- 虚拟
- 虚拟处理器(时分复用技术)
- 虚拟存储器(空分复用技术)
- 异步
- 小结(本节思维导图)
操作系统的概念(定义)
计算机系统自下而上可大致分为4部分:硬件、操作系统、应用程序和用户(这里的划分与计算机组成原理中的分层不同)
操作系统(Operating System, OS)是指①控制和管理整个计算机系统的硬件与软件资源,合理地组织、调度计算机的工作与资源的分配,②进而为用户和其他软件提供方便接口与环境的程序集合,③操作系统是计算机系统中最基本的系统软件
操作系统的目标和功能
从操作系统的定义可以归纳出:
-
操作系统是系统资源的管理者
直观的例子:打开 Windows 操作系统的 “任务管理器”
-
操作系统要向上层提供方便易用的服务
-
操作系统是最接近硬件的一层软件
操作系统作为计算机系统资源的管理者
作为系统资源的管理者,需要提供的功能有:
-
文件管理
计算机中的信息都是以文件的形式存在的,操作系统中负责文件管理的部分称为文件系统,文件管理包括文件存储空间的管理、目录管理及文件读写管理和保护等
-
存储器管理
存储器管理是为了给多道程序的运行提供良好的环境,方便用户使用及提高内存的利用率, 主要包括内存分配与回收、地址映射、内存保护与共享和内存扩充等功能
-
处理机管理
在多道程序环境下,处理机的分配和运行都以进程(或线程)为基本单位,因而对处理机的管理可归结为对进程的管理。并发是指在计算机内同时运行多个进程,因此进程何时创建、何时撤销、如何管理、如何避免冲突、合理共享就是进程管理的最主要的任务。进程管理的主要功能包括进程控制、进程同步、进程通信、死锁处理、处理机调度等
-
设备管理
设备管理的主要任务是完成用户的I/O请求,方便用户使用各种设备,并提高设备的利用率,主要包括缓冲管理、设备分配、设备处理和虚拟设备等功能
【计算机操作系统的重点就在于操作系统作为系统资源的管理者,要如何设计和实现以上功能】
举例说明:使用QQ进行视频聊天
-
Step1:在各个文件夹中找到QQ安装的位置(如 D:/Tencent/QQ/Bin)
➡️文件管理功能:逐层打开文件夹,找到QQ.exe这个程序(可执行文件)的存放位置
-
Step2:双击打开 QQ.exe
➡️存储器管理功能:需要把该程序相关数据放入内存
(补充知识:执行一个程序前需要将该程序放到内存中,才能被CPU处理) -
Step3:QQ 程序正常运行
➡️处理机管理功能:对应的进程被处理机(CPU)处理
-
Step4:开始和朋友视频聊天
➡️需要将摄像头、麦克风等设备分配给进程
(这些工作都由"工人"负责,"雇主”无须关注)
操作系统向上层提供方便易用的服务
为了让用户方便、快捷、可靠地操纵计算机硬件并运行自己的程序,操作系统还提供了用户接口
操作系统提供的接口主要分为两类:
一类是命令接口,用户利用这些操作命令来组织和控制作业的执行;
另一类是程序接口,编程人员可以使用它们来请求操作系统服务
操作系统向上层提供方便易用的服务体现的是封装思想,操作系统把一些对用户不友好的硬件功能封装成简单易用的服务,使用户能更方便地使用计算机,用户无需关心底层硬件的原理,只需要对操作系统发出命令即可
命令接口
使用命令接口进行作业控制的主要方式有两种,即联机控制方式和脱机控制方式
按作业控制方式的不同,可将命令接口分为联机命令接口和脱机命令接口
-
联机命令接口
联机命令接口又称交互式命令接口,适用于分时或实时系统的接口
特点:用户说一句,系统跟着做一句
(“雇主”说一句话,"工人”做一件事,并做出反馈,这就强调了交互性) -
脱机命令接口
脱机命令接口又称批处理命令接口,适用于批处理系统,它由一组作业控制命令组成
特点:用户说一堆,系统跟着做一堆
(雇主”把要"工人”做的事写在清单上,"工人”按照清单命令逐条完成这些事,这就是批处理)
程序接口
程序接口:可以在程序中进行系统调用来使用程序接口(普通用户不能直接使用程序接口,只能通过程序代码间接实用)
操作系统作为最接近硬件的层次
操作系统作为最接近硬件的层次的目标:实现对硬件机器的拓展
没有任何软件支持的计算机称为裸机,在裸机上安装的操作系统,可以提供的资源管理功能和方便用户的各种服务功能,将裸机改造成功能更强、使用更方便的机器
通常把覆盖了软件的机器称为扩充机器或虚拟机
操作系统对硬件机器的拓展:将CPU、内存、磁盘、显示器、键盘等硬件合理地组织起来,让各种硬件能够相互协调配合,实现更多更复杂的功能
("工人”操作机器,机器就有更大的作用,于是“工人”便成了 “扩充机器”)
操作系统的特征(4个)
并发
并发是指两个或多个事件在同一时间间隔内发生
注意:区分并发和并行
并发:两个或多个事件在同一时间间隔内发生,这些事件宏观上是同时发生的,但微观上是交替发生的
并行:两个或多个事件在同一时刻同时发生
操作系统的并发性是指计算机系统中 “同时” 存在多个运行的程序,这些程序宏观上是同时运行的,但微观上是交替运行的
操作系统就是伴随着 “多道程序技术” 而出现的,因此操作系统和程序并发是一起诞生的
注意(重点):
单核CPU同一时刻只能执行一个程序,各程序只能并发地执行
多核CPU同一时刻可以同时执行多个程序,多个程序可以并行地执行
比如一个4核CPU就可以并行地执行4个程序,但是只要有4个以上的程序需要“同时”运行,那么并发性依然是必不可少的
因此,并发性是操作系统一个最基本的特征
共享
共享即资源共享,是指系统中的资源可供内存中多个并发执行的进程共同使用
从共享的定义来看:
如果失去并发性,则系统只会有一个程序正在运行,那么共享性失去存在意义
如果失去共享性,那么不同程序不能同时访问硬盘资源,并发性就无法被实现
所以,并发性和共享性互为存在条件
共享可分为互斥共享方式和同时共享方式两种资源共享方式
互斥共享方式
系统中的某些资源,虽然可以提供给多个进程使用,但是一个时间段内只允许一个进程访问该资源
如打印机、磁带机等
同时共享方式
系统中的某些资源,允许一个时间段内有多个进程“同时”对他们进行访问
(这里所说的“同时”通常是宏观上的,而在微观上,这些进程可能是交替地对该资源进行访问即“分时共享"的)
如磁盘设备等
虚拟
虚拟是指把一个物理上的实体变为若干逻辑上的对应物
物理实体(前者)是实的,即实际存在的;而后者是虚的,是用户感觉上的事物
操作系统的虚拟技术可归纳为:①时分复用技术,如处理器的分时共享(虚拟处理器);②空分复用技术, 如虚拟存储器
虚拟处理器(时分复用技术)
虚拟处理器技术是通过多道程序设计技术,采用让多道程序并发执行的方法,来分时使用一个处理器的。此时,虽然只有一个处理器,但它能同时为多个用户服务,使每个终端用户都感觉有一个中央处理器(CPU)在专门为它服务。利用多道程序设计技术把一个物理上的CPU虚拟为多个逻辑上的CPU,称为虚拟处理器
显然,如果失去了并发性,则一个时间段内系统只需运行一道程序,就失去了实现虚拟性的意义,因此没有并发性就谈不上虚拟性
虚拟存储器(空分复用技术)
虚拟存储器技术将一台机器的物理存储器变为虚拟存储器,以便从逻辑上扩充存储器的容量。当然,这时用户所感觉到的内存容量是虚的。我们把用户感觉到(但实际不存在)的存储器称为虚拟存储器
异步
多道程序环境允许多个程序并发执行,并发运行的程序会争抢着使用系统资源,但由于资源有限,进程的执行并不是一贯到底的,而是走走停停的,它以不可预知的速度向前推进,这就是进程的异步性
小结(本节思维导图)
【计算机操作系统】 专栏的文章 均有参考 《王道计算机考研 操作系统》 课程视频