# 1.2 操作系统的发展与分类 ## 一、操作系统的发展历史 ### 1.1 手工操作阶段(1940年代) **特点**: - 没有操作系统 - 用户直接使用计算机硬件 - 通过手工操作(插拔板、开关)控制程序运行 **缺点**: - 资源利用率极低 - 用户独占全机 - CPU等待人工操作 ### 1.2 批处理系统阶段(1950年代) #### 单道批处理系统 **出现原因**:解决人机矛盾、CPU与I/O设备速度不匹配矛盾 **工作方式**: - 作业成批输入到磁带 - 监督程序自动依次处理作业 - 作业一个接一个连续处理 **特点**: - 自动性:磁带上的作业自动依次执行 - 顺序性:作业按顺序执行 - 单道性:内存中仅有一道程序运行 **缺点**: - 内存中仅有一道程序,CPU利用率仍不高 - I/O操作时CPU空闲等待 #### 多道批处理系统 **工作方式**: - 多道程序同时存放在内存中 - 在管理程序控制下交替执行 - 当某程序因I/O请求暂停时,CPU转去执行另一程序 **特点**: - 多道性:内存中多道程序并发执行 - 无序性:作业完成顺序与进入顺序无关 - 调度性:作业调度和进程调度 **优点**: - 资源利用率高 - 系统吞吐量大 **缺点**: - 无交互性 - 作业平均周转时间长 ### 1.3 分时系统阶段(1960年代) **出现原因**:用户需要与作业交互 **实现方式**: - 将CPU时间划分为很短的时间片 - 轮流为多个终端用户服务 - 每个用户感觉自己独占计算机 **特点**: - **多路性**:多个用户同时使用 - **交互性**:用户与系统人机对话 - **独立性**:各用户独立操作,互不干扰 - **及时性**:用户请求能在短时间内获得响应 **关键问题**: - 及时接收:配置多路卡,实现数据流的及时接收 - 及时处理:采用时间片轮转方式 ### 1.4 实时系统阶段(1960-1970年代) **定义**:系统能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。 **类型**: - **硬实时系统**:必须在严格规定的时间内完成(如工业控制、航空航天) - **软实时系统**:偶尔违反时间规定无致命后果(如多媒体系统、信息采集系统) **特点**: - 多路性 - 独立性 - 及时性(比分时系统要求更高) - 交互性(比分时系统弱) - 可靠性(要求极高) ### 1.5 网络操作系统阶段(1980年代) **出现背景**:计算机网络的发展 **功能**: - 网络通信 - 资源共享 - 网络服务 - 网络管理 **特点**: - 建立在单机操作系统之上 - 提供网络通信和网络服务功能 ### 1.6 分布式操作系统阶段(1980-1990年代) **定义**:将地理上分散的、具有自治功能的多个计算机系统互连起来,实现信息交换和资源共享,协作完成任务的系统。 **特点**: - **分布性**:任务分布在多个处理机上 - **并行性**:任务可并行执行 - **透明性**:用户无需知道资源的具体位置 - **共享性**:资源共享 - **健壮性**:单点故障不影响整体 **与网络操作系统的区别**: - 分布式OS是单一系统,网络OS是多个独立系统 - 分布式OS具有透明性,网络OS不具有 - 分布式OS的任务可以并行执行 ### 1.7 嵌入式操作系统阶段(1990年代至今) **定义**:运行在嵌入式智能芯片环境中,对整个智能芯片以及它所操作、控制的各种部件装置等资源进行统一协调、调度、指挥和控制的系统软件。 **特点**: - 专用性强 - 实时性要求高 - 资源受限(内存小、CPU速度慢) - 高可靠性 **应用**:智能手机、智能家居、工业控制、汽车电子等 --- ## 二、操作系统的分类 ### 2.1 按功能特征分类 #### 批处理操作系统 **特点**: - 作业成批处理 - 多道程序运行 - 无交互性 **适用场景**:科学计算、大型数据处理 #### 分时操作系统 **特点**: - 多用户同时使用 - 交互性强 - 响应及时 **适用场景**:程序开发、教学、办公自动化 **代表系统**:UNIX、Linux #### 实时操作系统 **特点**: - 响应时间极短 - 可靠性要求高 - 专用性强 **适用场景**:工业控制、军事系统、航空航天 **代表系统**:VxWorks、RT-Linux ### 2.2 按系统结构分类 #### 单机操作系统 运行在一台计算机上,管理该计算机的硬件和软件资源。 #### 网络操作系统 在单机操作系统基础上增加了网络通信和网络服务功能。 #### 分布式操作系统 管理分布式系统中的所有资源,具有单一系统映像。 ### 2.3 按用户界面分类 #### 命令行界面(CLI) 通过输入命令与系统交互,如MS-DOS、UNIX Shell。 #### 图形用户界面(GUI) 通过图形界面与系统交互,如Windows、macOS。 ### 2.4 按应用领域分类 #### 桌面操作系统 面向个人用户,如Windows、macOS、Linux桌面版。 #### 服务器操作系统 面向服务器应用,如Windows Server、Linux服务器版。 #### 嵌入式操作系统 面向嵌入式设备,如Android、iOS、VxWorks。 #### 移动操作系统 面向移动设备,如Android、iOS、HarmonyOS。 --- ## 三、典型操作系统介绍 ### 3.1 UNIX **诞生**:1969年,AT&T贝尔实验室 **特点**: - 多用户、多任务 - 良好的可移植性 - 强大的命令行功能 - 树形文件系统 **影响**:现代操作系统的重要基础 ### 3.2 Linux **诞生**:1991年,Linus Torvalds **特点**: - 开源、免费 - 多用户、多任务 - 良好的可移植性 - 丰富的软件生态 **发行版**:Ubuntu、CentOS、Debian、Fedora等 ### 3.3 Windows **诞生**:1985年,Microsoft **特点**: - 图形用户界面 - 丰富的应用软件 - 良好的硬件兼容性 - 易用性强 **版本**:Windows 95/98/XP/7/8/10/11 ### 3.4 macOS **诞生**:1984年,Apple **特点**: - 基于UNIX - 精美的图形界面 - 与Apple硬件深度整合 - 良好的用户体验 ### 3.5 Android **诞生**:2008年,Google **特点**: - 基于Linux内核 - 开源 - 丰富的应用生态 - 市场占有率最高 ### 3.6 iOS **诞生**:2007年,Apple **特点**: - 基于Darwin(类UNIX) - 闭源 - 安全性高 - 用户体验优秀 --- ## 四、操作系统的发展趋势 ### 4.1 虚拟化技术 通过软件模拟硬件功能,在一台物理机上运行多个虚拟机。 **应用**:服务器整合、云计算、测试环境 ### 4.2 云计算 通过网络提供可伸缩的计算资源。 **服务模型**: - IaaS(基础设施即服务) - PaaS(平台即服务) - SaaS(软件即服务) ### 4.3 物联网操作系统 面向物联网设备的轻量级操作系统。 **特点**:低功耗、小体积、实时性 **代表**:FreeRTOS、AliOS Things、HarmonyOS ### 4.4 人工智能与操作系统 - 智能调度 - 自适应资源管理 - 智能故障诊断 --- ## 五、考研重点 1. **操作系统的发展阶段**:手工、单道批处理、多道批处理、分时、实时、网络、分布式、嵌入式 2. **各阶段的特点和优缺点** 3. **操作系统的分类**:按功能、结构、界面、应用领域 4. **典型操作系统**:UNIX、Linux、Windows、macOS、Android、iOS 5. **分时系统与实时系统的区别** 6. **网络OS与分布式OS的区别** --- *下一节:1.3 操作系统的运行环境*