# 1.1 操作系统的概念、特征和功能 ## 一、操作系统的概念 ### 1.1 什么是操作系统 **操作系统(Operating System, OS)** 是控制和管理计算机硬件和软件资源、合理组织计算机工作流程、方便用户使用的**系统软件**。 操作系统是计算机系统中最基本的系统软件,是用户和计算机硬件之间的**接口**。 ### 1.2 操作系统的地位 ``` 用户 ↓ 应用程序(软件) ↓ 操作系统(OS) ↓ 计算机硬件 ``` 操作系统是**裸机上的第一层软件**,是对硬件系统的第一次扩充。 ### 1.3 操作系统的目标 1. **方便性**:使计算机系统易于使用 2. **有效性**:提高系统资源的利用率 3. **可扩充性**:便于增加新的功能和模块 4. **开放性**:遵循标准规范,实现软硬件的互连 --- ## 二、操作系统的特征 ### 2.1 并发(Concurrence) **并发**:两个或多个事件在**同一时间间隔内**发生。 **并行**:两个或多个事件在**同一时刻**发生。 **注意**: - 单处理机系统中,程序只能并发执行,不能并行执行 - 多处理机系统中,程序可以并行执行 - 并发是操作系统最基本的特征 ### 2.2 共享(Sharing) **共享**:系统中的资源可供内存中多个并发执行的进程共同使用。 **共享方式**: - **互斥共享**:资源在一段时间内只允许一个进程访问(如打印机) - **同时共享**:资源在一段时间内允许多个进程同时访问(如磁盘) **注意**:并发和共享是操作系统的两个最基本特征,**互为存在条件**。 ### 2.3 虚拟(Virtual) **虚拟**:通过某种技术把一个物理实体变为若干个逻辑上的对应物。 **虚拟技术**: - **时分复用**:如虚拟处理机、虚拟设备 - **空分复用**:如虚拟存储器 **例子**: - 虚拟内存:将物理内存和磁盘结合,为用户提供比实际内存更大的地址空间 - 虚拟处理器:通过分时技术,让每个用户感觉自己独占CPU ### 2.4 异步(Asynchronism) **异步(不确定性)**:进程的执行是**走走停停**的,以不可预知的速度向前推进。 **原因**: - 多个进程并发执行,共享资源 - 进程的执行受系统环境的影响 **特征**:只要运行环境相同,OS需要保证程序运行的**可再现性**。 --- ## 三、操作系统的功能 ### 3.1 处理机管理功能 **主要任务**: - 进程控制:创建、撤销、挂起、激活进程 - 进程同步:协调多个进程的运行 - 进程通信:实现进程之间的信息交换 - 调度:作业调度和进程调度 ### 3.2 存储器管理功能 **主要任务**: - 内存分配与回收 - 内存保护:确保每个用户程序仅在自己的内存空间运行 - 地址映射:将逻辑地址转换为物理地址 - 内存扩充:利用虚拟存储技术扩充内存 ### 3.3 设备管理功能 **主要任务**: - 缓冲管理:缓和CPU与I/O设备速度不匹配的矛盾 - 设备分配:根据用户请求分配设备 - 设备处理:实现CPU与设备控制器之间的通信 - 设备独立性:用户程序与物理设备无关 ### 3.4 文件管理功能 **主要任务**: - 文件存储空间管理 - 目录管理 - 文件的读/写管理和保护 ### 3.5 操作系统与用户之间的接口 **用户接口**: - **命令接口**:联机命令接口(交互式)、脱机命令接口(批处理) - **程序接口**:系统调用(用户程序请求OS服务的唯一途径) - **图形接口**:图形用户界面(GUI) --- ## 四、操作系统的类型 ### 4.1 批处理系统 **特点**: - 用户脱机使用计算机 - 作业成批处理 - 多道程序运行 **优点**:资源利用率高,系统吞吐量大 **缺点**:无交互性,作业周转时间长 ### 4.2 分时系统 **特点**: - 多路性:多个用户同时使用 - 交互性:用户与系统进行人机对话 - 独立性:各用户独立操作 - 及时性:用户请求能在短时间内获得响应 **时间片**:将CPU时间划分为很短的时间片,轮流分配给各个终端用户。 ### 4.3 实时系统 **特点**: - 及时响应 - 高可靠性 **类型**: - **硬实时系统**:必须在规定时间内完成(如工业控制) - **软实时系统**:偶尔违反时间规定无致命后果(如多媒体系统) ### 4.4 网络操作系统 **特点**: - 网络通信 - 资源共享 - 网络服务 ### 4.5 分布式操作系统 **特点**: - 分布性:任务分布在多个处理机上 - 并行性:任务可并行执行 - 透明性:用户无需知道资源的具体位置 - 共享性:资源共享 - 健壮性:单点故障不影响整体 ### 4.6 嵌入式操作系统 **特点**: - 专用性强 - 实时性要求高 - 资源受限 --- ## 五、操作系统的运行环境 ### 5.1 硬件支持 - **定时器**:实现时间片轮转调度 - **中断机制**:处理外部事件 - **特权指令**:只能在核心态执行 - **内存保护机制**:防止进程越界访问 ### 5.2 两种运行状态 **核心态(管态、内核态)**: - 运行操作系统程序 - 可以执行所有指令 - 可以访问所有内存 **用户态(目态)**: - 运行用户程序 - 只能执行非特权指令 - 只能访问用户空间 **状态转换**: - 用户态 → 核心态:中断、异常、系统调用 - 核心态 → 用户态:修改程序状态字 ### 5.3 中断与异常 **中断(外中断)**:来自CPU执行指令以外的事件 - 如I/O中断、时钟中断 **异常(内中断、陷入)**:来自CPU执行指令内部的事件 - 如地址越界、算术溢出、系统调用 **中断处理过程**: 1. 关中断 2. 保存断点 3. 引出中断服务程序 4. 保存现场和屏蔽字 5. 开中断 6. 执行中断服务程序 7. 关中断 8. 恢复现场和屏蔽字 9. 开中断、中断返回 --- ## 六、操作系统体系结构 ### 6.1 简单结构(无结构) 早期的MS-DOS等,没有清晰的结构。 ### 6.2 模块化结构 将操作系统按功能划分为若干模块,各模块之间通过接口通信。 **优点**:提高开发效率,增强可维护性 **缺点**:接口定义困难,模块间关系复杂 ### 6.3 分层式结构 将操作系统分为若干层,每层只能调用下层提供的服务。 **优点**:便于调试和验证,易于扩充 **缺点**:效率较低,功能划分困难 ### 6.4 微内核结构 将最基本的功能放入微内核,其他服务功能移到用户态的服务器。 **微内核功能**: - 进程(线程)管理 - 低级存储管理 - 中断和陷入处理 - 进程间通信 **优点**: - 提高了系统的可扩展性 - 增强了系统的可靠性 - 提高了系统的可移植性 **缺点**:性能较低(需要频繁的用户态和核心态切换) ### 6.5 外核结构 让内核分配硬件资源给应用程序,由应用程序自己管理资源。 --- ## 七、考研重点 1. **操作系统的概念**:定义、地位、目标 2. **四大特征**:并发、共享、虚拟、异步 3. **五大功能**:处理机、存储器、设备、文件、接口管理 4. **操作系统类型**:批处理、分时、实时、网络、分布式、嵌入式 5. **运行环境**:核心态与用户态、中断与异常 6. **体系结构**:简单、模块化、分层、微内核、外核 --- *下一节:1.2 操作系统的发展与分类*