操作系统概述(3)--发展
为在严格时间限制内完成关键任务而设计的操作系统。
操作系统的发展历程:从手工操作到现代系统
操作系统不是一蹴而就的,它的每一次迭代,都是为了解决上一代系统的痛点,让计算机的资源利用率、交互体验和可靠性不断升级。今天咱们就顺着时间线,把操作系统的发展阶段讲得明明白白~
一、手工操作阶段:程序员 “亲自下场” 的时代
这是计算机刚诞生时的 “原始阶段”,完全没有操作系统的概念,程序员要自己上手操作机器。
两种操作方式
-
人工操作方式
-
逻辑:用户独占整台计算机,从输入程序到运行结束,全程都得自己守着。
-
致命缺点:
-
资源利用率极低:CPU 经常长时间 “摸鱼”,等你输入打孔纸带、调试程序的时候,它只能空转,计算能力根本没法充分发挥。
-
-
-
脱机 I/O 方式(早期的 “自动化尝试”)
-
逻辑:引入脱机输入 / 输出技术,由监督程序控制数据的输入输出,不用程序员全程盯着。
-
优点:缓解了一部分人机矛盾,资源利用率有了一点点提升。
-
核心局限:内存中只有一道程序运行,必须等这道程序完全结束,才能运行下一道,本质上还是串行执行,资源利用率依然很低。
-
二、批处理阶段:让计算机 “批量干活”
手工操作的效率实在太低,于是人们发明了批处理:把多个任务打包交给计算机,让它自动按顺序处理,减少人工干预。
1. 单道批处理:“一个接一个” 的流水线
-
逻辑:内存中一次只放一道程序,运行完再自动加载下一道,全程由监督程序控制。
-
痛点:和脱机 I/O 一样,程序串行执行,CPU 还是会因为等待 I/O 操作(比如读磁带、打印)而空闲,资源利用率依然上不去。
2. 多道批处理:操作系统的 “第一次革命”(常考点!)
这是现代操作系统并发思想的雏形,也是考试和面试的高频考点!
-
核心逻辑:内存中同时驻留多道相互独立的程序,当一道程序因为 I/O 等原因暂停时,CPU 立刻切换去运行另一道程序。
-
核心特点:
-
多道:内存里同时装多个程序,互不干扰。
-
并发:宏观上看,多个程序是并行运行的;微观上看,CPU 是串行交替执行它们的(和我们之前讲的并发概念完美对应)。
-
-
实现技术:中断技术(让程序能被打断、切换)+ 多道程序设计技术(内存中管理多道程序)。
-
优点:
-
多道程序并发运行,CPU 和设备的资源利用率大幅提升。
-
系统吞吐量变大,单位时间能处理更多任务。
-
-
缺点:
-
用户响应时间长:你提交任务后,得等前面的任务都处理完才能轮到自己,没法和计算机实时交互。
-
没有人机交互功能:整个过程都是 “黑盒”,你没法中途修改、调试程序。
-
三、分时操作系统:终于实现 “人机交互自由”
多道批处理解决了资源利用率的问题,但用户只能 “交了任务就等”,体验极差。于是分时操作系统应运而生,让多个用户能同时和计算机交互。
-
核心逻辑:以 “时间片” 为单位,把 CPU 的运行时间轮流分配给每个用户程序。每个用户程序只能运行一个时间片的时间,时间一到就被切换,轮到下一个用户程序。
-
优点:
-
解决了人机交互问题:用户的请求可以被及时响应,能一边输入一边看结果,就像现在用电脑一样。
-
允许多个用户同时使用同一台计算机:比如早期的大型机,能让几十个终端用户同时登录操作。
-
-
缺点:不能优先处理紧急任务:所有用户的时间片都是平等分配的,没法给紧急任务插队的机会。
四、实时操作系统:为 “生死攸关” 的任务而生
有些场景下,计算机必须在严格的时间限制内完成关键任务,比如导弹制导、工业控制、医疗设备,分时系统的 “轮流分配” 就不够用了,于是有了实时操作系统。
-
核心定义:为在严格时间限制内完成关键任务而设计的操作系统。
-
两种类型:
-
硬实时操作系统:必须在绝对严格的时间内完成处理,超时就会导致严重后果,比如航天、工业控制场景。
-
软实时操作系统:可以接受偶尔违反时间规定,不会造成致命后果,比如视频会议、在线直播的卡顿。
-
-
核心特点:
-
确定性:响应时间可预测,不会出现随机延迟。
-
可靠性:能长时间稳定运行,不会轻易崩溃。
-
强时效性:优先保障关键任务的执行,哪怕其他任务被延迟也没关系。
-
五、其他类型:分布式 & 微机操作系统(了解即可)
-
分布式操作系统:把多台计算机通过网络连接起来,组成一个整体,用户使用时感觉就像在用一台计算机,能充分利用多台机器的资源。
-
微机操作系统:就是我们现在常用的 PC 操作系统,比如 Windows、macOS、Linux,兼顾交互性、多任务处理和通用性。
六、发展历程的底层逻辑:永远在解决 “资源利用率” 和 “用户体验” 的矛盾
回顾整个发展历程,你会发现操作系统的每一步迭代,都在平衡两个核心目标:
-
提升资源利用率:从手工操作到多道批处理,都是为了让 CPU、内存这些硬件不 “摸鱼”。
-
优化用户体验:从批处理到分时系统,都是为了让用户能更方便、实时地和计算机交互。
实时操作系统则是在特定场景下,优先保障 “时效性”,牺牲了一部分通用性;而现代操作系统,就是在这些目标之间找到了平衡,既有分时交互的体验,又有多道并发的效率,还能通过调度机制兼顾紧急任务。

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐

所有评论(0)