未配置操作系统的计算机系统
1.人工操作方式
程序员将已穿孔的纸带 ---- 装入纸带输入机 ---- 启动纸带输入机将纸带上的程序和数据输入计算机 ---- 启动计算机运行 ---- 程序运行完毕并取走计算结果 ---- 下一个用户上机
缺点:
用户独占全机
CPU等待人工操作 ---- 人工操作方式严重降低了计算机资源的利用率,此即人机矛盾。
2. 脱机输入/输出方式
为了解决人机矛盾及CPU和I/O设备速度不匹配的矛盾
输入设备 ---- 外围机 ---- 磁盘
事先将装有用户程序和数据的纸带装入纸带输入机 ---- 外围机控制下,把纸带上的数据输入到磁盘上
CPU需要这些程序和数据时,再从磁带上高速地调入内存
CPU需要输出时,CPU把数据直接从内存高速地输送到磁带上
磁盘 ---- 外围机 ---- 输出设备
在外围机的控制下,磁带上结果通过相应输出设备输出。
脱机: 程序和数据的输入输出都是在外围机的控制下完成的,在脱离主机的情况下进行的
优点:
减少了CPU的空闲时间
提高了I/O速度
把在主机的直接控制下进行输入/输出的方式 ---- 联机输入/输出方式
单道批处理系统
1. 单道批处理系统
为实现对作业的连续处理,需要先把一批作业以脱机方式输入到磁带上,并在系统中配上监督程序,在其控制下,这批作业一个接一个地连续处理。
监督程序将第一个作业装入内存 ---- 把运行控制权交给该作业 ----- 作业处理完成 ,将控制权交还给监督程序 ---- 监督程序把下一个作业装入内存 ---- ······· ---- 直到磁带上的所有作业全部完成
虽然系统对作业的处理是成批进行的,但是内存中始终只保持一道作业,故称为单道批处理系统。
缺点:
在内存中仅有一道程序,系统中资源得不到充分利用
为了能在系统中运行较大的作业 ---- 配置了较大容量的内存 ----- 实际上大多数作业都是中小型 ---- 内存浪费
为了满足各种类型的作业需求 ---- 配置多种类型的I/O设备 ---- 资源浪费
2. 多道批处理系统
用户所提交的作业先存放在外存上,排成一个队列 ----- 后备队列
作业调度程序按一定算法 ,从后备队列选择若干个作业调入内存,让其共享CPU和系统中的各种资源
优缺点:
1.资源利用率高
2.系统吞吐量大 ----- (1) CPU和其他资源保持忙碌状态 (2)仅当作业完成时或运行不下去时才进行切换,系统开销小
3.平均周转周期长 ---- 作业要排队一次进行处理
4.无交互能力
需要解决的问题:
- 处理机争用问题
- 内存分配和保护问题
- I/O设备分配问题
- 文件组织和管理问题
- 作业管理问题
- 用户与系统的接口问题
操作系统是一组 能有效地组织和管理计算机硬件和软件资源,合理地对各类作业进行调度,以及方便用户使用的 程序的集合。
分时系统(Time Sharing System)
解决用户的需求:
1.人—机 交互
希望独占全机并对它进行直接控制,以便能方便地对程序中的错误进行修改。
2.共享主机
用户在共享一台主机时,每人都希望能像独占时一样,不仅可以随时与计算机进行交互,而且还不会感觉到其他用户的存在。
分时系统,即在一台主机上连接了多个配有显示器和键盘的终端并由此所组成的系统,该系统允许多个用户同时通过自己的终端,以交互方式使用计算机,共享主机中的资源。
实现:
系统首先必须能提供多个终端,同时给多个用户使用。
其次,当用户在自己的终端上键入命令时,系统应能及时接收,并及时处理该命令,再将结果返回给用户。
此后,用户可根据系统返回的相应情况,再继续键入下一条命令,此即 人-机交互。
1) 及时接收
及时接收多个用户键入的命令和数据 ---- 多路卡 ---- 实现分时多路复用
为了能使从终端上输入的数据被依次逐条地进行处理,还需要为每一个终端配置一个缓冲区,用来暂存用户键入的命令(或数据)。
2) 及时处理
人机交互的关键在于,用户键入命令后,能对自己的作业及其运行及时地实施控制或进行修改
因此,各个用户的作业都必须驻留在内存中,并能频繁地获得处理机运行。
彻底改变批处理的运行方式,改用下面的方式:
1)作业直接进入内存 ---- 作业在磁盘上是不能运行的
2)采用轮转运行方式 ---- 时间片
分时系统的特征
1) 多路性 多个用户共享一台计算机
2) 独立性 每个用户互不干扰
3) 及时性 用户请求能在很短时间内获得响应
4) 交互性 人机对话
实时系统(Real Time System)
实时系统的正确性,不仅由计算的逻辑结果来确定,而且还取决于产生结果的时间。
实时系统最主要的特征,是将时间作为关键参数。
实时系统,是指系统能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。
实时任务类型:
1) 周期性实时任务和非周期性实时任务。
周期性任务 ---- 周期运行
非周期任务 ---- 无明显周期性,必须联系着一个截止时间
可分为开始截止时间、完成截至时间
2) 硬实时任务和软实时任务
硬实时任务 ---- 系统必须满足任务对截止时间的要求,否则会出现难以预测的后果
软实时系统 ---- 若偶尔错过了截止时间,对系统的影响不会太大
实时系统要求系统高度可靠,因为任何差错都可能带来无法预料的灾难性后果 ---- 采取了多级容错措施
微机操作系统
1. 单用户单任务操作系统
只允许一个用户上机,且只允许用户程序作为一个任务运行
2. 单用户多任务操作系统
只允许一个用户上机,但允许用户将程序分为若干个任务,使它们并发执行,从而有效地改善了系统的性能 ------ Windows
3. 多用户多任务操作系统
允许多个用户通过各自的终端,使用同一台机器,共享主机系统中的各种资源,而每个用户程序又可进一步分为几个任务,使它们并发执行 ---- UNIX Solaris Linux