1. 操作系统的目标和作用
1.1 操作系统的目标
- 方便性(最重要)
- 有效性(最重要)
- 可扩充性
- 开放性
1.2 操作系统的作用
-
OS作为用户与计算机硬件系统之间的接口
-
OS作为计算机系统资源的管理者
计算机资源可分为四类: 处理机、存储器、I/O设备、文件(数据和程序)【OS的主要功能也正是对着四类资源进行有效管理】
处理机管理(进程管理): 用于分配和控制处理机
存储器管理(内存管理): 负责内存的分配与回收
I/O设备管理: 负责I/O设备的分配(回收) 与操纵
文件管理: 用于实现对文件的存取、共享和保护 -
OS实现了对计算机资源的抽象
1.3 推动操作系统发展的主要动力
- 不断提高计算机资源利用率
- 方便用户
- 器件的不断更新迭代
- 计算机体系结构的不断发展
- 不断提出新的应用需求
2. 操作系统的发展过程
2.1 未配置操作系统的计算机系统阶段 【1】
- 人工操作方式
- 脱机输入/输出方式 (Off-Line I/O)
2.2 单道批处理系统阶段【2】
出现了监督程序,控制作业一个接着一个处理
主要缺点: 系统资源得不到充分的利用
2.3 多道批处理系统阶段【3】
2.3.1 优缺点
优点👇
- 资源利用率高
- 系统吞吐量大【原因: CPU和其它资源保持"忙碌"状态; 仅当作业完成时或运行不下去时才进行切换,系统开销小】
缺点👇 - 平均周转时间长【作业要排队依次进行处理】
- 无交互能力【用户一旦把作业提交给系统后,直至作业完成,用户都不能与自己的作业进行交互,修改和调试极不方便】
2.3.2 多道批处理系统需要解决的问题
2.4 分时系统【4】
分时系统是指,在一台主机上连接了多个配有显示器和键盘的终端并由此所组成的系统,该系统允许多个用户同时通过自己的终端,以交互方式使用计算机,共享主机中的资源
2.4.1 关键问题
- 及时接收
要做到及时接收多个用户键入的命令或数据,只需系统中配置一个多路卡即可;为了能使从终端输入的数据被依次逐条进行处理,还需要为每个终端配置一个缓冲区,用来暂存 - 及时处理
2.4.2 分时系统的特征
2.5 实时系统【5】
实时系统是指系统能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务一致地运行
2.5.1 实时系统的类型
- 工业(武器)控制系统
- 信息查询系统
- 多媒体系统
- 嵌入式系统
2.5.2 实时任务的类型
- 周期性实时任务和非周期性实时任务
- 硬实时任务和软实时任务
硬实时任务: 系统必须满足任务对截止时间的要求(用于工业和武器控制)
软实时任务: 页联系着一个截止时间,但并不严格,偶尔错过任务截止时间对系统影响不大(用于信息查询系统,多媒体系统)
2.5.3 实时系统和分时系统特征的比较
2.6 微机操作系统的发展
2.6.1 单用户单任务操作系统
2.6.2 单用户多任务操作系统
2.6.3 多用户多任务操作系统
3. 操作系统的基本特征
三种基本操作系统各自的不同特征👇
- 批处理系统 有着高的资源利用率和系统吞吐量
- 分时系统 能获得及时响应
- 实时系统 具有实时特征
共同特征👇
- 并发
- 共享
- 虚拟
- 异步
3.1并发
3.1.1 并行与并发
- 并行性: 多个同时发生
- 并发性: 宏观同时,微观交替
3.1.2 进程引入
进程理解为 计算机程序/I/O程序更小的单元
一个进程是 计算机中的程序关于某数据集合上的一次运行活动,是程序、PCB结构、数据三者的结合
3.2 共享
OS环境下的资源共享(又称资源复用),是指系统中的资源可供内存中多个并发执行的进程共同使用。
实现资源共享的两种方式👇
- 互斥共享方式
- 同时访问方式
3.2.1 互斥共享方式
3.2.2 同时访问方式
3.3 虚拟
在OS中,把通过某种技术将一个物理实体变为若干个逻辑上的对应物的功能称为 "虚拟“
实现虚拟的技术👇
- 时分复用技术(又称多道程序技术)【包括虚拟处理机技术、虚拟设备技术】
实现虚拟处理机、虚拟设备等。
提高资源利用率的根本原因: 它利用某设备为一用户服务的空闲时间,又转去为其它用户服务,使设备得到最充分的利用 - 空分复用技术
用于对存储空间的管理
3.4 异步
4. 操作系统的主要功能
4.1 处理机管理功能
4.1.1 进程控制
4.1.2 进程同步
进程同步机制的主要任务👇
为多个进程(含线程)的运行进行协调
协调的方式👇
- 进程互斥方式
- 进程同步方式
4.1.3 进程通信
4.1.4 调度
- 作业调度
- 进程调度
4.2 存储器管理功能
4.2.1 内存分配
4.2.2 内存保护
4.2.3 地址映射
4.2.4 内存扩充
4.3 设备管理功能
4.3.1 缓冲管理
4.3.2 设备分配
4.3.3 设备处理
4.4 文件管理功能
4.4.1 文件存储空间的管理
4.4.2 目录管理
4.4.3 文件的读/写管理和保护
4.5 操作系统与用户之间的接口
4.5.1 用户接口
4.5.2 程序接口
5. OS结构设计
5.1 传统操作系统结构
- 无结构操作系统
- 模块化结构OS
- 分层式结构OS