# 概念
控制和管理整个计算机系统的 硬件 和 软件 资源,并合理地组织调度计算机的工作和资源分配,以提供给用户和其他软件方便的接口和环境。它是计算机系统中最基本的系统软件
# 简史
# 1、批处理系统
在没有人工参与的情况下,顺序执行一系列的程序
- 特点:节约、自动化、同一时间只有一个软件运行、软件可独占全部硬件资源、不支持多用户和多程序
- 联机批处理系统:作业的输入 / 输出由 CPU 来处理
- 脱机批处理系统:输入 / 输出脱离主机控制
# 2、多道程序设计
同时把多个程序放入内存中,并允许它们交替在 CPU 中运行
- 特点:多道、宏观并行、微观串行
- 优点:系统吞吐量大、资源利用率高
- 缺点:平均周转时间长、不提供交互能力
# 3、分时系统
分时是指多个用户分享使用同一台计算机,多个程序分时共享硬件和软件资源。
将 CPU 处理时间分割为多个时间片,将时间片分给不同程序,达到多个程序 “同时” 运行的效果
- 特点:多路性、独立性、及时性、交互性
# 4、分布式系统
多台计算机组成并满足下列条件的系统。
- 特点:分布性和并行性
# 5、实时系统
能在某个时间限制内完成某些紧急任务而不需要时间片排队
- 特点:及时性、可靠性、交互会话较弱
# 硬件简介
# 基本实现机制
# 特征
以下四个特征中,“并发” 和 “共享” 是最基本的特征,二者互为存在的条件
- 并发:宏观同时,微观交替
- 共享:系统中的资源可供内存中多个并发执行的进程共同使用。分为 互斥共享 和 同时共享
- 虚拟:把物理实体变为逻辑对应的虚拟物。如虚拟处理器(多道程序中的 CPU)、虚拟存储器、虚拟 I/O 设备
- 异步:在多道程序环境下,允许多个程序并发执行,但由于资源有限,进程的执行不是一贯到底的,而是走走停停,以不可预知的速度向前推进
# 功能
处理器管理
即 对进程和线程的管理,包括进程控制、进程同步、进程通信、死锁处理、处理机调度等
存储器管理(内存)
管理缓存、主存、磁盘等所形成的多级存储架构,为多道程序的并发提供良好的环境。包括内存分配与回收、地址映射、内存保护与共享和内存扩充等功能
设备管理
主要包括设备分配、虚拟设备、设备传输控制(中断、通道)等功能
文件管理
将磁盘变成一个很容易使用的存储媒介提供给用户使用。包括文件存储空间的管理、目录管理及文件读写管理和保护等
作业管理
作业调度和作业控制
# 结构
# 1、模块接口、宏内核
将操作系统按功能划分为若干具有一定独立性的模块,各模块之间能够通过接口进行通信
重要的衡量标准是 内聚性 和 耦合度
- 优点:加速了操作系统的研制过程、增加了操作系统的灵活性、便于修改和维护
- 缺点:接口定义困难,无序性
# 2、有序分层法
将操作系统分为若干层,最底层(层 0)为硬件,最高层(层 N)为用户接口,每层只能调用它的低层的功能和服务(单向依赖)
# 3、虚拟机结构
通过软件模拟的计算机系统,能够在物理硬件上运行多个独立的虚拟环境。其核心思想是 抽象硬件资源
- 优点:可实现完全保护;从软件到硬件逐步扩展;多道程序和扩充机器的功能完全分开,每一部分都简单灵活易维护
- 缺点:性能开销比较大
# 4、微内核结构
将内核中 最基本的功能 保留在内核,而将那些不需要在核心态执行的功能移到用户态执行,从而降低内核的设计复杂性
- 优点:易于实现、可靠性高、可移植性好、配置灵活、适应分布式环境
- 缺点:速度较慢