一、手工处理阶段
1. 人工操作方式
1.1 概述
早期的操作方式是由程序员将事先已穿孔的纸带(或卡片),装入纸带输入机(或卡片输入机),再启动它们将纸带(或卡片)上的程序和数据输入计算机,然后启动计算机运行。
1.2 缺点
人工操作方式仅当程序运行完毕并取走计算结果后,才允许下一个用户上级,它具有以下两方面的缺点:
- 用户独占全机,即一台计算机的全部资源由上机用户所独占。
- CPU等待人工操作。当用户进行装带(卡)、卸带(卡)等人工操作时,CPU及内存等资源是空闲的。人工操作方式严重降低了计算机资源的利用率。
2. 脱机输入/输出(Offline I/O)方式
2.1 概述
为了解决人机矛盾及 CPU 和 I/O 设备之间速度不匹配的矛盾,20世纪50年代末出现了脱机I/O技术。在脱机I/O过程中,程序和数据的输入和输出都是在外围机的控制下,即脱离主机的情况下完成的。
2.2 优点
- 减少了CPU的空闲时间
由于脱机IO方式中,程序和数据的输入输出过程都是在脱机情况下由外围机完成的,并不占用主机时间,从而有效地减少了CPU的空闲时间。
- 提高了I/O速度
当 CPU 在运行中需要输入数据时,是直接从高速的磁带上将数据输入到内存的,这极大地提高了 I/O 速度。
二、批处理阶段
为了解决人机矛盾及 CPU 和 I/O 设备之间速度不匹配的矛盾,出现了批处理系统。
1. 单道批处理系统
1.1 概述
单道批处理系统的内存中只有一道作业,所有的作业就像一条流水线一样完成运输作业。
1.2 特征
- 自动性
磁带上的作业能够逐个自动运行,无需人工干预。
- 顺序性
磁带上的各道作业顺序进入内存,作业的完成顺序与它们进入内存的顺序相同。
- 单道性
内存中仅有一道程序运行,当前程序完成后才能进行下一道程序的运行。
1.3 缺点
- 系统中的资源得不到充分的利用。
单道批处理系统的内存中仅有一道程序,每逢该程序在运行中发出 I/O 请求后,CPU便处于等待状态,必须在其 I/O 完成后才继续运行。
- I/O 设备的低速性,更使 CPU 的利用率显著降低。
![[单道批处理系统的处理流程.svg]]
2. 多道批处理系统
2.1 概述
多道程序设计技术使得多个程序同时进入内存并允许其在 CPU 中交替运行,像有多个传送带运送货物。
2.2 特征
- 多道
计算机内存中同时存放多道相互独立的程序。
- 宏观上并行
宏观上多道程序各自开始自己的运行,相互独立。
- 微观上串行
内存上多道程序轮流占有 CPU,交替执行。
2.3 优点
- 资源利用率高
多道程序交替运行,使 CPU 处于忙碌状态
- 系统吞吐量大
1、CPU 和其它资源处于忙碌状态 2、仅当作业完成时或运行不下去时才进行切换,系统开销小。
2.4 缺点
- 平均周转时间长
由于微观上作业串行依次处理,宏观上作业并行,使得作业周转周转时间长。
- 无交互能力
一旦作业提交给系统,用户不能与自己的作业进行交互。
![[多道批处理系统的处理流程(四道).svg]]
三、分时系统 与 实时系统
1. 分时系统
1.1 概述
分时系统(Time-Sharing System) 是为了满足用户需求所形成的一种新型 OS。它与多道批处理系统之间的不同具体在了以下几个用户需求方面:
- 人机交互
- 共享主机
- 便于用户上机
分时系统的最关键问题是如何使用户能与自己的作业进行交互,即当用户在终端输入相关指令的时候,系统能够及时接收并处理该命令,并将结果返回给用户。(及时接收、及时处理)
- 作业进入内存(减少因磁盘速度过慢而导致的处理机空闲的情况)
- 采用轮转运行方式(为每项作业、每个用户分配资源)
1.2 特征
- 同时性
同时性也称多路性,指允许多个终端用户同时使用一台计算机。
- 独立性
指的是用户能够方便地与系统进行人机交互。
- 交互性
系统中的多个用户可以彼此独立地进行操作。
- 及时性
用户请求能在很短的时间内获得响应。
2. 实时系统
2.1 概述
实时系统(Real-Time System) 是指系统能够及时响应事件的请求并在规定时间内完成对该事件的处理,并能够控制所有实时任务协调一致的运行。
- 实时控制
- 实时信息处理
2.2 实时系统分类
① 硬实时系统
- 硬实时系统(Hard Real-time Task,HRT) 是指系统必须满足任务对截止时间(时刻或时间范围)的要求,需要对时间有着绝对的把控,否则会出现难以预料的后果
② 软实时系统
- 软实时系统(Soft Real-time Task,HRT) 相较于硬实时系统更宽松,是指系统偶尔违反所规定的时间,也不会产生太大的影响。
3. 实时与分时的比较
① 多路性(同时性)
- 分时系统:系统按分时系统的原则为多个终端用户服务。
- 实时系统: 系统周期性的对多路现场信息进行采集,以及对多个对象进行控制。
② 独立性
- 分时系统 与 实时系统 对信息的采集以及对对象的控制也都是彼此互不干扰的。
③ 及时性
- 分时系统:根据人所能接收的等待时间确定的,并没有那么严格。
- 实时系统:根据控制对象所要求的时间来确定的,非常严格。
④ 交互性
- 分时系统:提供多种服务,交互能力更加广泛。
- 实时系统:用于某些实时的特定领域,仅限于某些特定的指令。
⑤ 可靠性
- 分时系统:要求系统可靠。
- 实时系统:要求系统可靠度更高,实时系统往往采取了多重容错机制来保证系统以及数据的安全性。