早期计算机使用纸带传输程序和数据, 操作系统只起到加载作用。
为了更好的利用计算机资源, 并且更好的和用户交互,出现了分时调度系统。
网络的快速发展,出现了分布式的操作系统。
主机型计算 -> 个人机计算 -> 普通计算
1946 - 50年代(电子管),集中计算(计算中心),计算机资源昂贵。
人工模式
脱机模式
50年代末 ~ 60年代中(晶体管):利用磁带把若干个作业分类编成作业执行序列,
每个批作业自动依次处理。可使用汇编语言开发。
批作业中的作业组成:
用户程序 + 数据 + 作业说明书(作业控制语言)
供一次加载的磁带或磁盘,通常由若干个作业组组成,在处理中使用一组相同的系统软件。
把一批作业以脱机方式输入到磁带上,并在系统的监督程序(操作系统)的控制下使这批作业能一个接一个地连续处理。
中断: 指CPU在收到外部中断信号后,停止原来的工作,转去处理该中断事件,完毕后返回到原来断点继续工作。
中断处理过程: 中断请求,中断响应,中断点(暂停当前任务并保存现场),中断处理例程,中断返回(恢复中断电的现场并继续原有任务)
**特征: **
自动性:磁带上一批作业自动逐个依次运行
顺序性: 进入内存,执行与完成的顺序完全相同
单道性: 内存中仅有一道程序,只有该程序完成或发生异常时,才调入后继程序进入内存运行。
弊端:
一个作业独占全部资源,CPU负责计算和传输,CPU与外设速度不匹配,CPU与I/O串行资源利用率仍然很低。
并行:在任意一个时刻可以同时执行
并发:在一个时间段内,处于运行状态。交替使用CPU
多道: 内存中同时存放几个作业
并发运行: 都处于运行状态,但都未运行完。
微观上串行运行: 各作业交替使用CPU;
准备运行的多个作业,必须在内存中,这需要内存管理;
多个作业都准备运行,在单CPU中,CPU必须决定运行哪一个,这需要某种调度算法。
利用CPU空挡时间进行程序交替运行,保存CPU处于忙碌状态。
优点:
缺点:
特征:
需要解决的问题:
处理机争用、内存分配和保护、I/O设备分配、文件组织和管理、作业管理、用户与系统的接口。
典型应用
1964年IBM宣布推出OS/360计算机系统,是第一个采用小规模集成电路的主流机型。
操作系统是一组能够高效地控制和管理计算机硬件和软件资源、公平合理地对各类作业进行调度、以及方便用户使用计算机的程序集合。
内存中有多个用户程序,CPU利用率提高,但与用户无交互。
人 - 机交互;共享主机。
“ 分时 ” :指多个用户分时使用同一台计算机;多个程序分时共享硬件和软件资源。
把计算机的系统资源(尤其是CPU时间)进行时间上的分割,每个时间段称为一个时间片,每个用户依次轮流使用时间片30ms
通常按时间片分配,各个程序在CPU上执行的轮换时间。
分时系统实现的关键问题:
分时系统的特点:
具有 ” 前台 “ 和 ” 后台 “ 的多道分时系统
内存中同时存放多道作业,道数和位置都不固定。某些道为 ”前台区“ 存放
按时间片调度的前台作业流,其余道为 ” 后台 区 ” 存放批处理作业流;
前台优先,只有当前台调进调出或前台无可运行的作业时才运行后台作业。
既有分时系统多台中断共享主机交互性好,又有多道批处理系统资源利用率高的优点。
典型代表
MULTICS
UNIX
“ 实时 ”
周期性实时任务
非周期性实时任务
硬实时任务
软实时任务
实时系统特点:
批处理系统的主要确定是 失去了交互性
从总体上说,采用多道程序设计技术可以 增加 单位时间的作业量, 但对每一个作业,从作业开始到全部完成所需的时间比单道执行所需的时间可能要 延长
在分时系统中,时间片一定,用户数越多, 响应时间越长。
引入多道程序的目的是 充分利用CPU,减少CPU的等待时间
批处理操作系统提高了计算机的工作效率, 但 在作业执行时用户不能直接干预
在多道程序设计的计算机系统中, CPU 可以被多个程序交替占用
CPU状态分为系统态和用户态, 从用户态转换到系统态的唯一途径是 系统调用
在下列性质中, 哪一个不是分时系统的特征。 ( C )
A. 交互性
B. 多路性
C. 成批性
D. 独立性
DOS 没有多道程序设计的特点
当操作系统退出执行, 让用户执行时, 系统会 从管态变为目态
系统调用是由操作系统提供的内部调用, 它 只能通过用户程序间接使用
随着 VLSI(超大规模集成电路) 的发展,计算机硬件得到了迅速的发展,对操作系统提出了更高的要求。
计算机在接受用户请求后处理数据以及在数据处理结束时,将结果送到终端显示器。例如, 导弹控制系统应选择安装 实时操作系统
实时操作系统追求的目标为 快速响应
允许多个用户以交互使用计算机的操作系统是 分时系统
多道程序设计是指 有多个程序同时进入主存并发运行