作業控制語言(job control language)
一、定義
作業控制語言是指用來實現對用戶作業的組織和管理的各種控制命令或控制語句的有序集合。不同計算機系統的作業控制語言格式不同,各有特點。但他們所實現的主要功能是相同的。
二、發展
在早期批處理系統中,為了描述用戶提交給計算機的任務,系統提供給用戶的是類似于高級語言的作業控制語言。當用戶向計算機提出要求時,需要用作業控制語言來編寫作業控制程序,內容包括每一個運行步驟、要處理的數據、需要運行的程序、輸入和輸出方式、需要使用的資源等。對于用戶來說,這不是一個輕松的事情,他不但要熟記作業控制語言的所有語句,還要對自己的程序在計算機中的運行狀況有一個預測,運行的中間結果用戶往往看不到也無法干預。這是作業的脫機控制時期,早期的計算機用戶是一個特殊的專業化的群體。
而目前,對作業控制語言的改進是:直接使用高級語言對作業進行說明。BASIC語言是一個很典型的代表,用戶可以輸人單條BASIC語言命令來代表一個作業步驟,上一個步驟執行完畢以后再用新的命令來開始下一個步驟。作業控制已由脫機形式變為聯機形式。
三、基本語句
用戶的作業可以由一個或多個作業步構成。只有一個作業步的作業叫做單步作業;由多個作業步構成的作業叫做多步作業。不論單步作業還是多步作業一般都包含三個JCL基本語句。它們分別是:
1.作業語句(JOB)
標識一個作業的開始,提供必要的運行參數。
2.執行語句(EXEC)
標識一個作業步的開始,定義本作業步所要執行的程序或過程。
3.數據定義語句(DD)
用于描述應用程序所需要的數據文件。系統規定這三種語句行必須以“//”開頭。
四、主要功能
作業控制語言的主要功能有四點。
(1)能提供作業的提交;
(2)能控制作業和作業步的執行;
(3)能提供對各種軟硬件資源的使用;
(4)其它各種功能,如日歷、時間、帳號等。