【操作系统】第一章:操作系统概述
本篇笔记课程来源:王道计算机考研 操作系统
一、操作系统的概念
- 操作系统(Operating System,OS)是指控制和管理整个计算机系统 硬件和软件 资源,并合理地组织调度计算机的工作和资源的分配;以提供给用户和其他软件更加方便的接口和环境 ;它是计算机系统中最基本的系统软件 。
- 概念中所提到的分别是:
- 负责管理协调硬件、软件等计算机资源的工作
- 为上层用户、应用程序提供简单易用的服务
- 是一种系统软件
二、操作系统的功能和目标
功能简记:处(处理机管理)存(存储器管理)备(设备管理)文(文件管理)用(用户接口)
1. 作为系统资源的管理者
- 需要提供的功能有:
- 处理机(CPU)管理:例如程序运行的进程
- 存储器(存储)管理:例如程序运行时的数据
- 文件管理:例如文件存放
- 设备管理:例如键盘鼠标摄像头
2. 向上层提供服务
- 可以理解为:操作系统把一些难以理解的硬件功能封装成简单易用的服务,使用户能更方便地使用计算机,用户无需关心底层硬件的原理,只需要对操作系统发出命令即可。
- 提供的功能:
- 图形化界面(GUI):用户可以使用形象的图形界面进行操作,而不需要记忆复杂的命令、参数。
- 用户接口:命令接口、程序接口
接口类型 | 特点 | |
---|---|---|
命令接口 | 联机命令接口 / 交互式命令接口 | 说一句做一句,类似于终端命令行 |
脱机命令接口 / 批处理命令接口 | 说一堆做一堆,类似于 .bat 批处理文件 | |
程序接口 | 可以在程序中进行系统调用来使用程序的接口,类似于函数调用 |
- 在提供的功能中,GUI 和 命令接口用户可以直接使用;程序接口只能通过程序间接使用。
3. 对硬件的拓展
- 操作系统需要实现对硬件机器的拓展。
- 没有任何软件支持的计算机称为裸机。
- 经过操作系统的包装,裸机便以虚拟机的形式呈现给用户。与裸机相比,虚拟机更易于理解和使用。通常把覆盖了软件的机器称为扩充机器,也称之为虚拟机。
三、操作系统的四个特征
- 四个特征分别是:并发性、共享性、虚拟性、异步性。其中:
- 并发性和共享性是 最基本的特征,且 互为存在条件
- 没有并发和共享,就谈不上虚拟和异步
1. 并发性
- 并发:指两个或多个事件在同一时间间隔内发生。这些事件宏观上是同时发生的,但微观上是交替发生的。
- 另一个概念——并行:指两个或多个事件在同一时刻同时发生。
- 所以操作系统的并发性,是指计算机系统中 “同时” 运行着多个程序,这些程序宏观上看是同时运行着的,而微观上看是交替运行的。
- 操作系统就是伴随着 “多道程序技术” 而出现的。因此,操作系统和程序并发是一起诞生的。
-
需要注意⚠️⚠️⚠️重要
- 单核CPU同一时刻只能执行一个程序,各个程序只能并发地执行
- 多核CPU同一时刻可以同时执行多个程序,多个程序可以并行地执行
-
如果一个四核CPU需要 “同时” 运行四个以上的程序(核处理不过来),那么并发性依然是必不可少的,因此并发性是操作系统一个最基本的特性。
2. 共享性
- 共享即资源共享,是指系统中的资源可供内存中多个并发执行的进程共同使用。
- 两种资源共享方式:
- 互斥共享方式:系统中的某些资源,虽然可以提供给多个进程使用,但一个时间段内只允许一个进程访问该资源。
- 同时共享方式:系统中的某些资源,允许一个时间段内由多个进程 “同时” 访问该资源。
- 所谓的 “同时” 往往是宏观上的,而在微观上,这些进程可能是交替地对该资源进行访问(即分时共享)
- 并发和共享的关系‼️:互为存在条件。
- 并发性,指计算机系统中 “同时” 存在着多个运行着的程序。
- 共享性,指系统中的资源可供内存中多个并发执行的进程共同使用。
- 如果失去并发性,则系统中只有一个程序正在运行,则共享性失去存在的意义;
- 如果失去共享性,则多个进程不能同时访问硬盘资源,就无法实现并发。
3. 虚拟性
- 虚拟是指把一个物理上的实体变成若干个逻辑上的对应物。物理实体是实际存在的,而逻辑上对应物是用户感受到的。
- 比如日常使用计算机,一个程序需要放入内存并给它分配CPU才能执行
- 虚拟存储器技术——空分复用技术:实际只有4GB的内存,在用户看来似乎远远大于4GB
- 虚拟处理器技术——时分复用技术:实际只有一个单核CPU,在用户看来似乎有多个CPU在同时运行。
- 上面的有个印象即可,后面会说。
- 如果失去并发性,则一个时间段内系统只需运行一道程序,那么就失去了实现虚拟性的意义。因此,没有并发性,就谈不上虚拟性。
4. 异步性
- 异步是指,在多道程序环境下,允许多个程序并发执行,但由于资源有限(进程会争取使用系统资源),进程的执行不是一贯到底的,而是走走停停。
- 以不可预知的速度向前推进,就是进程的异步性。
- 如果失去了并发性,即系统只能串行地运行各个程序,那么每个程序的执行会一贯到底。因此,只有系统拥有并发性,才有可能导致异步性。
四、操作系统的发展与分类
1. 手工操作阶段
- 主要缺点:用户独占全机、人机速度矛盾导致资源利用率