Язык управления заданиями


Язык управления заданиями (англ. Job Control Language, JCL) — язык программирования, применяющийся в операционных системах мейнфреймов фирмы IBM линии OS/360, MVS, OS/390, z/OS и их клонах, включая ОС ЕС, TKS и БОС. В линии IBM DOS/360, DOS/VS, VSE, z/VSE реализована частично совместимая версия JCL. В гостевой ОС IBM GCS реализовано подмножество JCL.

Применяется для управления запуском пакетных заданий. В силу функционального назначения, обладает минимальными выразительными свойствами как, собственно, язык программирования.

Этот синтаксис остался с тех времён, когда задание вводилось с перфокарт (80-колоночных) и позволяет предохранить от случайного запуска на выполнение информации с неправильно вставленных (перевёрнутых) карт.

В целях обеспечения совместимости он не менялся с 1960 гг. и продолжает применяться в современных версиях операционных систем z/OS и z/VSE.

Эта последовательность команд («задание» в терминах ОС ЕС) копирует содержимое набора данных IS198.TEST.INPUT в набор данных IS198.TEST.OUTPUT.

Копирование осуществляет служебная программа IEBGENER, которая копирует входной набор данных (SYSUT1) в выходной набор данных (SYSUT2). Для нового (DISP=(NEW,CATLG,DELETE)) выходного набора данных будет выделено место (параметр SPACE) на устройстве прямого доступа: 40 цилиндров изначально и 15 раз по 5 цилиндров, когда первоначально выделенное место будет израсходовано. При успешном завершении задания новый набор данных будет каталогизирован (DISP=(NEW,CATLG,DELETE), а в случае аварийного завершения — удален (DISP=(NEW,CATLG,DELETE))