02. 发展与分类
操作系统的发展历程
第一代:人工操作阶段(1945-1955)
特点:
- 没有操作系统
- 程序员直接操作机器
- 手工装入程序和数据
- 串行处理,效率极低
工作方式:
程序员 - 手工装入程序 - 运行 - 手工取出结果 - 手工装入下一个程序
问题:
- CPU 利用率极低(小于 5%)
- 人工操作繁琐
- 错误率高
- 资源浪费严重
第二代:批处理系统(1955-1965)
特点:
- 引入监督程序(Monitor)
- 批量处理作业
- 减少人工干预
- 提高 CPU 利用率
工作流程:
作业1 - 作业2 - 作业3 - ... - 作业n
| | | |
监督程序统一调度和执行
分类:
- 单道批处理:一次只处理一个作业
- 多道批处理:同时处理多个作业
优点:
- 提高 CPU 利用率
- 减少人工干预
- 标准化作业处理
缺点:
- 用户无法与程序交互
- 响应时间长
- 调试困难
第三代:分时系统(1965-1980)
特点:
- 多用户同时使用
- 时间片轮转
- 交互式操作
- 资源共享
工作原理:
用户1: |--|--|--|--| (时间片)
用户2: |--|--|--| (时间片)
用户3: |--|--| (时间片)
典型系统:
- UNIX:贝尔实验室开发
- Multics:MIT 开发
- CTSS:兼容分时系统
优点:
- 多用户同时使用
- 交互式操作
- 资源共享
- 响应时间短
缺点:
- 系统开销大
- 安全性问题
- 资源竞争
第四代:实时系统(1980-1990)
特点:
- 实时响应
- 确定性
- 可靠性高
- 专用性强
分类:
- 硬实时系统:必须在规定时间内响应
- 软实时系统:允许偶尔超时
应用领域:
- 工业控制
- 航空航天
- 医疗设备
- 军事系统
特点:
- 响应时间确定
- 可靠性极高
- 专用性强
- 成本较高
第五代:网络操作系统(1990-2000)
特点:
- 网络连接
- 分布式处理
- 资源共享
- 通信协议
典型系统:
- Novell NetWare
- Windows NT
- Linux
功能:
- 网络文件共享
- 远程登录
- 网络打印
- 分布式计算
第六代:分布式操作系统(2000-2010)
特点:
- 多计算机协同
- 透明性
- 容错性
- 可扩展性
架构:
计算机A <-> 网络 <-> 计算机B
| |
共享资源 <-> 分布式文件系统
优点:
- 高性能
- 高可靠性
- 资源共享
- 负载均衡
第七代:嵌入式操作系统(2010-至今)
特点:
- 专用性强
- 资源受限
- 实时性要求
- 功耗优化
应用领域:
- 智能手机
- 物联网设备
- 汽车电子
- 工业控制
典型系统:
- Android
- iOS
- FreeRTOS
- VxWorks
操作系统的分类
按用户数量分类
1. 单用户操作系统
特点:
- 一次只能有一个用户使用
- 资源独占
- 管理简单
典型系统:
- MS-DOS
- Windows 95/98
- macOS(早期版本)
2. 多用户操作系统
特点:
- 多个用户同时使用
- 资源共享
- 权限管理
典型系统:
- UNIX/Linux
- Windows Server
- macOS
按任务处理方式分类
1. 单任务操作系统
特点:
- 一次只能运行一个程序
- 资源利用率低
- 管理简单
典型系统:
- MS-DOS
- CP/M
2. 多任务操作系统
特点:
- 同时运行多个程序
- 资源利用率高
- 管理复杂
分类:
- 抢占式多任务:系统可以强制切换任务
- 协作式多任务:任务主动让出 CPU
典型系统:
- Windows
- macOS
- Linux
按响应时间分类
1. 批处理系统
特点:
- 批量处理作业
- 响应时间长
- 吞吐量高
应用场景:
- 科学计算
- 数据处理
- 报表生成
2. 分时系统
特点:
- 交互式操作
- 响应时间短
- 多用户共享
应用场景:
- 个人计算机
- 服务器系统
- 开发环境
3. 实时系统
特点:
- 实时响应
- 确定性
- 可靠性高
应用场景:
- 工业控制
- 航空航天
- 医疗设备
按应用领域分类
1. 桌面操作系统
特点:
- 个人使用
- 图形界面
- 易用性强
典型系统:
- Windows
- macOS
- Linux(桌面版)
2. 服务器操作系统
特点:
- 网络服务
- 高可靠性
- 高性能
典型系统:
- Windows Server
- Linux Server
- UNIX
3. 嵌入式操作系统
特点:
- 专用性强
- 资源受限
- 实时性要求
典型系统:
- Android
- iOS
- FreeRTOS
4. 移动操作系统
特点:
- 触摸界面
- 功耗优化
- 网络连接
典型系统:
- Android
- iOS
- HarmonyOS
现代操作系统的发展趋势
1. 虚拟化技术
特点:
- 硬件虚拟化
- 操作系统虚拟化
- 应用虚拟化
应用:
- 云计算
- 容器技术
- 虚拟机
2. 云计算
特点:
- 按需服务
- 弹性扩展
- 资源共享
服务模式:
- IaaS(基础设施即服务)
- PaaS(平台即服务)
- SaaS(软件即服务)
3. 物联网
特点:
- 设备互联
- 数据采集
- 智能控制
应用:
- 智能家居
- 工业物联网
- 智慧城市
4. 人工智能
特点:
- 智能调度
- 自适应优化
- 预测性维护
应用:
- 智能资源管理
- 自动化运维
- 性能优化
总结
操作系统的发展经历了从人工操作到现代智能系统的漫长历程。每个阶段都有其特定的技术背景和应用需求,推动了操作系统的不断演进。
现代操作系统呈现出多样化、专业化、智能化的特点,能够适应不同应用场景的需求。理解操作系统的发展历程和分类体系,有助于我们更好地选择和使用合适的操作系统,也为学习操作系统的具体技术提供了历史背景。