作业控制语言(job control language)
一、定义
作业控制语言是指用来实现对用户作业的组织和管理的各种控制命令或控制语句的有序集合。不同计算机系统的作业控制语言格式不同,各有特点。但他们所实现的主要功能是相同的。
二、发展
在早期批处理系统中,为了描述用户提交给计算机的任务,系统提供给用户的是类似于高级语言的作业控制语言。当用户向计算机提出要求时,需要用作业控制语言来编写作业控制程序,内容包括每一个运行步骤、要处理的数据、需要运行的程序、输入和输出方式、需要使用的资源等。对于用户来说,这不是一个轻松的事情,他不但要熟记作业控制语言的所有语句,还要对自己的程序在计算机中的运行状况有一个预测,运行的中间结果用户往往看不到也无法干预。这是作业的脱机控制时期,早期的计算机用户是一个特殊的专业化的群体。
而目前,对作业控制语言的改进是:直接使用高级语言对作业进行说明。BASIC语言是一个很典型的代表,用户可以输人单条BASIC语言命令来代表一个作业步骤,上一个步骤执行完毕以后再用新的命令来开始下一个步骤。作业控制已由脱机形式变为联机形式。
三、基本语句
用户的作业可以由一个或多个作业步构成。只有一个作业步的作业叫做单步作业;由多个作业步构成的作业叫做多步作业。不论单步作业还是多步作业一般都包含三个JCL基本语句。它们分别是:
1.作业语句(JOB)
标识一个作业的开始,提供必要的运行参数。
2.执行语句(EXEC)
标识一个作业步的开始,定义本作业步所要执行的程序或过程。
3.数据定义语句(DD)
用于描述应用程序所需要的数据文件。系统规定这三种语句行必须以“//”开头。
四、主要功能
作业控制语言的主要功能有四点。
(1)能提供作业的提交;
(2)能控制作业和作业步的执行;
(3)能提供对各种软硬件资源的使用;
(4)其它各种功能,如日历、时间、帐号等。