版权归原作者所有,如有侵权,请联系我们

[科普中国]-作业控制语言列表

科学百科
原创
科学百科为用户提供权威科普内容,打造知识科普阵地
收藏

简介

作业是一个比程序更为广泛的概念,它不仅包含了通常的程序和数据,而且还应配有一份作业说明书,系统根据该说明书来对程序的运行进行控制。在批处理系统中,是以作业为基本单位从外存调入内存的。

作业控制语言列表是指作业控制语言要控制作业数量以及作业相关信息列表或作业要执行哪些操作的列表,即作业步,不同作业,作业步一般是有所区别的。在计算机系统,有多种作业类型,如CPU 繁忙型、I/O 繁忙型、批量型、终端型。不同作业类型对应优先级一般是不相同的,作业控制语言列表显示不同作业类型列表,方便调度程序进行作业调度。

作业控制语言列表内容作业控制语言列表一般包括:作业的基本描述、作业控制描述和资源请求描述。作业基本描述主要包括用户名、作业名、使用的编程语言名、允许的最大处理时间等。而作业控制描述则大致包括作业在执行过程中的控制方式,例如是脱机控制还是联机控制、各种作业步的操作顺序以及作业不能正常执行时的处理等。资源请求描述包括要求内存大小、外设种类和台数、处理机优先级、所需处理时间、所需库函数或实用程序等。

作业步在一个作业中,每一次程序的执行称为一个作业步,一个作业可包含几个作业步。一般的,一个作业由以下相对独立的三步组成:① “编译”作业步,通过执行编译程序对源程序进行编译,产生若干个目标程序段;② “连结装配”作业步,将“编译”作业步所产生的若干个目标程序段装配成可执行的目标程序;③ “运行”作业步,将可执行的目标程序读入内存并控制其运行。

一个作业中的各步是顺序执行的,因此一个作业步的输出可以作为下一个作业步的输入。

大型服务器系统中用户的作业可以由一个或多个作业步构成。只有一个作业步的作业叫做单步作业;由多个作业步构成的作业叫做多步作业。不论单步作业还是多步作业都必须包含三个作业控制语言基本语句(JCL Statement)。它们分别是:

(1)作业语句(JOB):标识一个作业的开始,提供必要的运行参数。

(2)执行语句(EXEC):标识一个 作业步的开始,定义本作业步所要执行的程序或过程。

(3)数据定义语句(DD):用于描述应用程序所需要的数据文件。

作业控制语言由九种语句组成,除了上一节中讨论过的三种基本语句外,还有以下六种附加语句:

(1)/* 语句:表示六内数据结束或调用JES 控制语句;

(2)//*语句:注释语句,由第4到第80列写出注释内容;

(3)//语句: 空语句,用以标记一个作业的结束;

(4)PROC 语句:流内过程(IN-STREAM PROCEDURE)或编目过程(CATALOGED PROCEDURE)的起始标记。

(5)PEND语句:标志一个流内过程的结束。

(6)Command语句:操作员用这个语句在输入流中写入操作命令。

作业控制语言基本命令及功能基本命令在大部分作业控制语言中所用到的命令大致为下列这些:

1.用某个编译程序对一个程序进行编译.

2.把某个程序中所用到的全部过程连接起来.

3.执行某个链接程序.

4.定义一份文件,

5.把一份文件写入到目录表中.

6.从目录表中撤除一份文件.

7.请求装上某盘磁带.

8.把存贮器转贮为八进制或十六进制.

9.对某份文件进行复制.

10.为了今后继续运行而把某一进程的状态保存起来(检验点).2

功能作业控制语言的主要功能有四点。

(1)能提供作业的提交;

(2)能控制作业和作业步的执行;

(3)能提供对各种软硬件资源的使用;

(4)其它各种功能,如日历、时间、帐号等。

作业调度调度在计算机中是分配工作所需资源的方法。资源可以指虚拟的计算资源,如线程、进程或数据流;也可以指硬件资源,如处理器、网络连接或扩展卡。作业调度的基本任务是从后备队列中按照一定的算法,选择出若干个作业,为它们分配运行所需的资源(首先是分配内存)。在将它们调入内存后,便分别为它们建立进程,使它们都成为可能获得处理机的就绪进程,并按照一定的算法将它们插入就绪队列。