简单的批处理系统
- 最早的操作系统。
- 实现了自动化作业调度,即自动从一个运行完的作业转换到下一个作业,可以在无需人工干预的条件下运行作业。
一批无需人机交互的作业批量运行,需要操作系统的介入。 - 简单批处理系统的核心是一个常驻监控程序(Monitor),可以控制作业传输,调度作业运行,自动从一个运行完的作业转换到下一个作业。
简单批处理系统采用的也称单道程序设计。
简单批处理系统比人工操作提高了计算机性能,但没有考虑到CPU和 I/O设备的并行性,造成了计算机资源的浪费。
批处理系统
批处理:用户将一批作业提交操作系统后就由操作系统控制系统控制它们自动运行。
批处理操作系统:
- 采用批量处理作业技术的操作系统;
- 单道批处理系统;
- 多道批处理系统
特点:
- 不具有交互性
- 提高CPU的利用率
单核单处理计算机系统中,CPU和硬盘控制器可并行操作。
多道程序系统
单用户通常不能总使得CPU和设备在所有时间内都忙碌。
多道程序设计:在内存中同时存在多道作业,在管理程序控制下相互穿插运行。
- 通过作业调度(Job Scheduling)选中一个作业并运行
- 当该作业必须等待时(如等待I/O),切换到另一个作业
目的:
使得CPU和设备在所有时间内尽可能忙碌,从而提高CPU和设备的利用率,充分发挥计算机系统部件的并行性。
如下图,内存中存在4个作业,他们交替并发运行,
现代操作系统广泛采用多道程序设计技术。
并行 VS 并发
并行:两个或者多个作业在同一时刻运行;
并发:两个或多个作业在同一时间间隔内依次运行。即:一个时间段中,有几个作业在同一个处理机上运行,但任一个时刻点上只有一个作业在处理机上运行。
随着多核处理器的出现,这两个概念并不严格区分。
分时系统
分时系统:多道程序设计的延伸
响应时间:指从用户提交作业到作业第一次运行的时间,对用户而言是指到屏幕有显示的时间。
时间片:把一段CPU时间按照固定单位进行分割,每个分割得到的时间段称为一个时间片。
每个任务依次轮流使用时间片。
作业分类:
- 批处理作业
- 交互作业:响应时间要短,最好小于1秒。
交互式进程主要关注的指标是响应时间。
分时的策略:
在一段时间内,每个作业依次轮流运行一个时间片,这样可以使得每个作业都获得较短的响应时间,从而满足交互作业的要求。遵循分时策略的联机多用户交互式的操作系统就是分时系统。
分时系统:
一种联机的多用户交互式的操作系统;
一般采用时间片轮转方式使一台计算机为多个用户服务;
在单位时间内,每个用户获得一个时间片并运行;
保证用户获得足够小的响应时间,并提供交互能力
原理:
若某个作业在分配的时间片用完之前计算还未完成,该作业暂时就中断,等待下一轮;此时,处理机让给另一个作业使用。
每个用户好像独占一台计算机(时间片小的原因)
第一个分时系统:MIT的CTSS,这个系统在1962年开发,运行在IBM 7094大型机上,支持32个用户。
例题:
假如分时系统中有5个作业,设定时间片大小为2毫秒,每个进程在10毫秒内各自运行了2毫秒。那么,该系统平均的响应时间是()。
A.0毫秒
B.2毫秒
C.4毫秒
D.5毫秒
答案:C
平均响应时间就是每个作业的响应时间除以总的作业量,即(0+2+4+6+8)/5=4。每个作业的响应时间就是从时间片开始算起,从用户提交作业到作业第一次运行的时间。