01. 基本概念、特征、功能
操作系统的基本概念
什么是操作系统?
操作系统(Operating System,OS)是管理和控制计算机硬件与软件资源的系统软件,为用户和应用程序提供接口和服务。它是计算机系统中最重要的系统软件,是用户与计算机硬件之间的桥梁。
操作系统的定义
操作系统可以定义为:
- 资源管理器:管理 CPU、内存、外设等硬件资源
- 服务提供者:为应用程序提供各种服务接口
- 用户接口:为用户提供友好的操作界面
- 系统协调者:协调多个程序并发执行
操作系统的基本特征
1. 并发性(Concurrency)
定义:多个程序或进程在同一时间段内同时执行。
特点:
- 宏观上同时执行,微观上交替执行
- 通过时间片轮转实现并发
- 提高系统资源利用率
示例:
进程A: |--|--|--|--| (时间片1)
进程B: |--|--|--| (时间片2)
进程C: |--|--| (时间片3)
2. 共享性(Sharing)
定义:系统中的资源可以被多个并发执行的程序共同使用。
共享方式:
- 互斥共享:资源在某一时刻只能被一个程序使用
- 同时共享:资源可以同时被多个程序使用
共享资源类型:
- CPU 时间
- 内存空间
- 外设(打印机、磁盘等)
- 文件和数据
3. 虚拟性(Virtualization)
定义:通过某种技术将一个物理实体转换为多个逻辑对应物。
虚拟化类型:
- CPU 虚拟化:多道程序设计,每个用户感觉独占 CPU
- 内存虚拟化:虚拟内存技术,提供比物理内存更大的地址空间
- 设备虚拟化:虚拟打印机、虚拟磁盘等
示例:
物理内存: 4GB
虚拟内存: 每个进程可访问4GB地址空间
实际效果: 多个进程同时运行,各自拥有独立的地址空间
4. 异步性(Asynchronism)
定义:程序的执行不是一气呵成的,而是走走停停,以不可预知的速度向前推进。
原因:
- 资源竞争
- 系统调度
- 外部事件(I/O 操作)
特点:
- 程序执行顺序不可预测
- 需要同步机制保证正确性
- 提高系统响应性
操作系统的核心功能
1. 进程管理(Process Management)
主要任务:
- 进程的创建、撤销、调度
- 进程间通信和同步
- 死锁的预防和检测
管理内容:
- 进程控制块(PCB)
- 进程调度算法
- 进程状态转换
2. 内存管理(Memory Management)
主要任务:
- 内存分配和回收
- 地址转换
- 内存保护
管理技术:
- 分区管理
- 分页管理
- 分段管理
- 虚拟内存
3. 文件管理(File Management)
主要任务:
- 文件的创建、删除、读写
- 目录管理
- 文件存储空间管理
管理内容:
- 文件系统结构
- 文件访问控制
- 文件备份和恢复
4. 设备管理(Device Management)
主要任务:
- 设备分配和回收
- 设备驱动管理
- I/O 控制
管理技术:
- 中断处理
- DMA 技术
- 缓冲管理
5. 用户接口(User Interface)
接口类型:
- 命令行接口(CLI):通过命令与系统交互
- 图形用户接口(GUI):通过图形界面与系统交互
- 程序接口(API):应用程序调用系统服务
操作系统的重要性
1. 对用户的重要性
- 简化操作:用户无需了解硬件细节
- 提高效率:多任务处理,提高工作效率
- 保护数据:提供数据安全和隐私保护
2. 对应用程序的重要性
- 提供标准接口:统一的系统调用接口
- 资源管理:自动管理硬件资源
- 错误处理:提供错误检测和恢复机制
3. 对硬件的重要性
- 硬件抽象:隐藏硬件复杂性
- 资源优化:提高硬件利用率
- 兼容性:支持多种硬件平台
总结
操作系统作为计算机系统的核心软件,具有并发性、共享性、虚拟性和异步性四个基本特征。它通过进程管理、内存管理、文件管理、设备管理和用户接口五大功能,为用户和应用程序提供高效、安全、可靠的服务。
理解这些基本概念和特征,是深入学习操作系统其他内容的基础。在实际应用中,这些特征和功能相互配合,共同构成了现代操作系统的完整体系。