多道批处理系统

关注
义项:操作系统批处理技术

多道批处理系统是内存中同时保留多道相互独立的作业、由操作系统安排它们轮流占用处理器的一类批处理系统,作业等待输入输出时处理器转去执行内存中的其他作业,从而提高处理器与外设的利用率并增大系统吞吐量[1][2]。它在 20 世纪 60 年代中期随多道程序设计技术的引入而形成,标志着操作系统进入成熟阶段[3]。其代价是用户提交作业后无法与之交互[1]。

百科 图文
目录
  1. 定义
  2. 原理
  3. 发展历程
  4. 应用
  5. 局限
  6. 参见

定义

多道批处理系统是批处理操作系统的一种,它的内存中可以同时保留多道相互独立的作业,由系统安排这些作业交替使用处理器。按照内存中允许存放的作业数目划分,批处理系统分为单道批处理系统和多道批处理系统,在批处理系统中引入多道程序设计技术后便得到后者[1]。与它相对的单道批处理系统在同一时刻只让一道作业驻留内存,作业进行输入输出操作时处理器只能等待,多道批处理系统正是为改变这种状况而出现[4]。

此类系统具有两个基本性质。一是多道,作业先存放于外存并排成后备队列,系统依据一定的调度原则从队列中选取一个或多个作业装入内存运行,作业的结束与后备作业的进入均由系统自动完成,从而形成连续的作业流;二是成批,作业进入系统之后,用户不能直接干预其运行[1]。内存中作业完成的顺序与它们进入内存的先后并无严格对应关系,先进入内存的作业有可能后完成,实际次序取决于所用的调度算法[4]。

多道批处理系统的目标是让系统的各个组成部分尽量保持忙碌:处理器运行一道作业的同时,外设可以为其他作业进行输入输出,因而系统资源得到较充分的利用,单位时间内完成的工作总量也随之增加[5][2]。

原理

多道批处理系统的调度一般分为两个环节:作业调度负责从外存的作业队列中挑选作业送入内存,进程调度则从内存中选出可运行的进程占用处理器,二者构成两级调度[6]。当一道程序因输入输出请求而暂停运行时,处理器立即转去执行内存中的另一道程序,输入输出设备与处理器因此可以并行工作,这一过程借助中断技术实现[5]。

从宏观上看,同时进入系统的多道程序都处于运行过程中,各自向前推进;从微观上看,由于只有一个处理器,各道程序只能轮流使用处理器、交替执行,因此宏观并行、微观串行是多道程序系统的基本特征[2]。

支撑多道运行需要若干硬件条件:存储保护机构用于防止一道作业破坏其他作业或系统程序,地址转换机构把作业中的地址映射为主存的实际位置,中断机构则使处理器能够及时获知外设的工作状态[2]。高速外存同样不可缺少,SPOOLing技术便建立在通道技术与多道程序设计之上,用磁盘上的输入井和输出井缓解处理器与低速外设之间的速度差距[7]。


flowchart LR

A[用户提交作业] --> B[外存后备队列]

B --> C[作业调度]

C --> D[内存中的多道作业]

D --> E[进程调度]

E --> F[处理器运行某道作业]

F --> G{是否需要输入输出}

G -- 是 --> H[该作业转入等待队列]

H --> E

G -- 否 --> I[作业完成退出系统]

发展历程

20 世纪 50 年代,计算机采用批处理方式工作,作业成批提交并由系统自动过渡,但主机内存中一次只能放一道作业,作业发出输入输出请求后高速处理器便处于等待状态,利用率很低[3]。为改善处理器的利用率,人们提出多道程序设计技术,即把多道程序同时放入内存并允许它们轮流在处理器上运行,当一道程序因输入输出请求暂停时,处理器便转去执行另一道程序[3]。

20 世纪 60 年代中期,批处理系统中应用了多道程序设计技术,多道批处理系统由此形成,它的出现标志着操作系统进入趋于成熟的阶段,作业调度管理、处理机管理、存储器管理、外部设备管理与文件系统管理等功能相继出现[3][1]。

国际商业机器公司(IBM)于 1964 年发布 System/360 系列计算机及配套的 OS/360 操作系统,后者最初是一个简单的批处理系统,执行单道程序,程序等待输入输出时处理器只能空闲,造成了处理器资源的浪费[8]。1967 年出现的 OS/360 MVT 版本支持多道程序,把中央存储器划分为多个分区,每个程序在一个分区中运行,最多可同时运行 15 个程序,缓解了处理器资源浪费的问题;不过这种静态分区方式也带来内存碎片,程序所占内存不能超过分配给它的大小[9]。

在多道批处理系统之后,20 世纪 60 年代中期又出现了分时系统,用户得以通过时间片轮转方式与计算机交互[3]。此后部分操作系统同时兼有多道批处理、分时和实时处理的功能,批处理作为一种功能模块继续存在于后来的系统中。

应用

多道批处理系统通常用于以科学计算为主的大中型计算机,这类场合更看重资源利用率与系统吞吐量,而不要求人机交互[4]。它适合已调试成功、需要对大量不同数据作同类处理的作业,例如气象云图的分析、工资报表的批量处理等[2]。

运行在 IBM 大型机上的 OS/360、DOS/360 等是批处理操作系统的早期代表,它们由操作员成批提交作业、由系统自动完成处理[8]。在设备管理方面,多道批处理环境常配合 SPOOLing 技术使用,把磁盘上的区域作为输入井和输出井,将原本为独占设备的打印机改造成可供多个进程共享的设备,这种做法在多用户系统和局域网中被广泛采用[7]。

局限

多道批处理系统最突出的不足是缺乏人机交互能力。用户把作业交给系统后,直到作业完成都不能与自己的作业发生交互,既无法在运行中修改程序,也无法调试程序,使用起来很不方便[1][4]。

作业的平均周转时间较长是另一个问题。由于作业需要排队依次处理,一道作业从进入系统到完成退出所经历的时间往往达到数小时甚至数天[1]。同时,用户提交作业后既不了解自己程序的运行状态,也不能对计算机进行控制[10]。

从实现角度看,多道批处理系统结构复杂。系统需要为每道程序分配内存并防止相互覆盖、合理安排处理器时间、分配共享的输入输出设备并组织大量程序和数据,因此必须解决处理机管理、内存管理、I/O 设备管理、文件管理和作业管理等一系列问题[1]。

参见

  • 单道批处理系统 —— 内存中同一时刻只保留一道作业的批处理系统,是本词条所述系统的前身。

  • 批处理操作系统 —— 把作业成批提交、由系统自动运行的操作系统,多道批处理系统是其中的一种。

  • 分时系统 —— 以时间片轮转方式让多个用户交互使用计算机的系统,与多道批处理系统同属多用户系统。

  • SPOOLing技术 —— 用磁盘上的输入井和输出井模拟脱机输入输出的技术,常用于多道批处理环境。

  • 作业调度 —— 决定哪些作业从外存进入内存的调度环节,是多道批处理系统的组成部分。

  • 中断 —— 使处理器能够及时掌握外设状态并实现并行工作的硬件机制。

参考资料

  1. 多道批处理系统 . baidu.com [引用日期2026-09-29]
  2. ecsponline.com 上的 PDF 文件 . ecsponline.com [引用日期2026-09-29]
  3. 操作系统发展史 . baidu.com [引用日期2026-09-29]
  4. [科普中国]-分批作业 . kepuchina.cn [引用日期2026-09-29]
  5. 考研操作系统【1.2 操作系统的发展历程】 . aliyun.com [引用日期2026-09-29]
  6. 1955~1965,批处理系统 . ustc.edu.cn [引用日期2026-09-29]
  7. SPOOLing系统 - 操作系统中的设备管理核心技术 . baidu.com [引用日期2026-09-29]
  8. 首个批处理操作系统——OS/360_微软操作系统_云计算产业趋势-中关村在线 . zol.com.cn [引用日期2026-09-29]
  9. OS/360:提供虚拟存储器支持 . zol.com.cn [引用日期2026-09-29]
  10. 考研操作系统【1.2 操作系统的发展历程】 . huaweicloud.com [引用日期2026-09-29]
词条评价
词条统计

浏览次数:0 次

阅读量:0 次 · 阅读完成量:0 次

最近更新:2026-09-29T11:26:52Z

历史版本

完成率 = 阅读完成量 ÷ 阅读量,分母是阅读量不是浏览次数 —— 关了 JS 的、秒退的都在浏览次数里、不在阅读量里。 详细口径在后台的「数据统计」页。

本条目引用的词条
批处理操作系统 单道批处理系统 SPOOLing技术 System/360 OS/360 分时系统 单道批处理系统 批处理操作系统 分时系统 SPOOLing技术 作业调度 中断
红色的还不存在。红链不是错误——它标出"这个概念被引用了但还没人写"。