Опубликован: 13.04.2006 | Уровень: специалист | Доступ: платный | ВУЗ: Московский государственный университет путей сообщения
Лекция 5:

Управление заданиями и язык JCL

Ключевые слова: job, пользователь, система текстов, control language, batch job, JCL, mount, logon, ПО, атрибут пользователя, класс, значение, анализ, очередь заданий, BCP, компонент, управление заданиями, централизованное управление, SSI, интерфейс, управляющие программы, операторы, Entry, phase, терминальное устройство, RJE, remote, network, internal, reader, входные данные, spool, системный журнал, регистрация, выборка, очередь, conversation, трансляция, промежуточный код, синтаксические ошибки, диагностическое сообщение, PROC, execute phase, инициатор работ, исключение, output, hold, вывод, узел сети, purge, поле, метка, пробел, MVS, pending, список, параметр, cond, step, последовательность операторов, модуль, язык управления заданиями, время выполнения, информация, шифр, килобайт, мегабайт, приватность, запись, слово, CONDITION, код завершения, return code, отношение, код возврата, минимум, ключевое слово, программа, поиск, ссылка, ключевой параметр, апостроф, синтаксис, data definition, SMS, VSAM, дамп, печатающее устройство, длина, управляющие, DLM, dummy, DSN, физический адрес, EDT, DataSet, Data, control block, длина блока, тип записи, блок памяти, CYL, память, байт, диск, Приращение, Размещение, пароль, SL, IBM, BLP, консоль, терминал, имя программы, печать, интервал, DASD, тело процедуры, модифицируемость, компиляция, фактический параметр

Понятие задания

В п. 5.1.1 мы определили задание (job) как внешнюю единицу работы z/OS. Это означает, что пользователь может запросить у системы выполнение какой-либо работы (конечно, связанной с запуском определенных приложений) с помощью специальным образом записанного и переданного системе текста. Это и есть задание. Задания составляются на языке управления заданиями JCL (Job Control Language) и направляются в систему пользователями через входные устройства и сетевые коммуникации, а также через ранее запущенные приложения. В задании зашифровано, какие программы, в какой последовательности и с какими данными должны быть исполнены, а также в какой форме и куда должны быть направлены результаты выполнения программ.

Все множество заданий в z/OS может быть представлено в виде трех групп:

  • пакетные задания (batch job), формируемые пользователями на языке JCL и направляемые на обработку по команде сеанса TSO SUBMIT или через сетевые интерфейсы.
  • STC-задания, инициируемые с помощью консольных команд START и MOUNT и получившие название запускаемые процедуры (started task);
  • TSU-задания, формируемые в результате запуска пользовательских сеансов TSO/E по команде LOGON и предназначенные для поддержки диалога с пользователем.

Задания, поступающие в систему от различных источников, образуют поток заданий, обрабатываемый специальным системным компонентом JES.

При выполнении STC и TSU заданий z/OS создает отдельные адресные пространства для каждой запускаемой процедуры и каждого пользовательского сеанса TSO. Для пакетных заданий новые адресные пространства не создаются, поскольку их выполнение производится в системных адресных пространствах программ-инициаторов, входящих в состав JES.

Каждое задание характеризуется набором атрибутов, среди которых необходимо выделить:

  • имя (jobname);
  • идентификатор (jobID);
  • класс выполнения или просто класс (class);
  • приоритет (prty).

Имя задания - имя, присваиваемое заданию пользователем (для пакетных заданий) или формируемое автоматически (для STC/TSU-заданий). Идентификатор задания - уникальный код (номер) задания, устанавливаемый системой при вводе задания. Именно по идентификатору система отличает одно задание от другого.

Класс задания устанавливает принадлежность задания к определенной группе в зависимости от формы запуска, атрибутов пользователя и требований к ресурсам. В z/OS поддерживается два специальных класса для STC и TSU заданий и до 36 классов для пакетных заданий. Классы пакетных заданий обозначаются символами A, B, ..., Z и цифрами 0, 1, ..., 9 и могут назначаться по усмотрению пользователей с помощью JCL. Если пользователь не указал класс, система сформирует его в соответствии с настройками по умолчанию.

Приоритет задания (число в диапазоне 0-15) служит для определения очередности выполнения заданий. Обычно приоритет устанавливается системой автоматически на основе текущих атрибутов задания и может динамически изменяться в зависимости от времени ожидания в очереди. Наивысшему приоритету соответствует значение 15.

С каждым заданием система ассоциирует два специальных набора данных: SYSIN и SYSOUT. Входной набор данных SYSIN отражает исходные данные, используемые приложениями задания. Эти данные могут быть представлены непосредственно в тексте задания (в этом случае говорят, что исходные данные размещаются во входном потоке ) или содержаться в указанных наборах данных и/или устройствах. Выходной набор данных SYSOUT служит для размещения системных сообщений, а также сообщений и результатов работы, выполняемых в рамках задания программ. Система предоставляет возможность просмотреть и распечатать SYSOUT, который иногда называют отчетом или листингом задания.

Ярослав Матюхин
Ярослав Матюхин
Россия
Сергей Исаков
Сергей Исаков
Россия