Введение
Программа "Не делай ничего" на мейнфреймах IBM. IEFBR14 – это служебная программа IBM для мейнфреймов. Она работает во всех средах IBM, основанных на OS/360, включая z/OS. Это программа-заглушка, которая возвращает код возврата 0, аналогично команде no-op в UNIX-подобных системах.
IEFBR14 is an IBM mainframe utility program. It runs in all IBM mainframe environments derived from OS/360, including z/OS. It is a placeholder that returns the exit status zero, similar to the true command on UNIX like systems.
Распределение (также называемое "инициация")
В ОС/360 и производных от неё мейнфреймных системах большинство программ не указывают файлы (обычно называемые наборами данных) напрямую, а обращаются к ним косвенно через операторы языка управления заданиями (JCL), вызывающие эти программы. Эти определения данных (или "DD") могут включать параметр "disposition" (DISP=), который определяет, как файл должен управляться – создавать новый файл или использовать существующий, удалять файл после завершения или сохранять его, и так далее. IEFBR14 был создан, поскольку, хотя операторы DD могут легко создавать или удалять файлы, они не могут сделать это без запуска программы из-за специфики системы управления заданиями, которая всегда требует, чтобы инициатор фактически выполнил программу, даже если эта программа представляет собой пустую операцию. Программа, используемая в JCL, фактически не обязана использовать файлы для их создания или удаления – вся работа выполняется спецификацией DD DISP=. Таким образом, требовалась очень простая программа, которая ничего не делает, чтобы выполнять эту функцию. IEFBR14 позволяет создавать или удалять набор данных с помощью JCL.
Анализ и валидация
По крайней мере, в z/OS, переход к выполнению другой программы вызовет проверку вызывающей программы на наличие синтаксических ошибок в этой точке.
Именование
"IEF" берет свое начало от соглашения, принятого на мейнфреймных компьютерах, согласно которому программы, поставляемые IBM, группировались по функциональности или разработчику, и каждая группа имела трехбуквенный префикс. В OS/360 первая буква почти всегда была "I", а программы, разработанные группой управления заданиями (включая IEFBR14), использовали префикс "IEF". Другие распространенные префиксы включали "IEB" для утилит работы с наборами данных, "IEH" для системных утилит и "IEW" для компоновки и загрузки программ. Другими основными компонентами были (и остаются) "IEA" (Супервизор операционной системы) и "IEC" (Супервизор ввода/вывода). Как объясняется ниже, "BR 14" представляла собой основную функцию программы – просто возврат в операционную систему. Эта часть имени программы часто была мнемонической; например, IEBUPDTE была утилитой для работы с наборами данных (IEB), которая применяла обновления (UPDTE) к файлам исходного кода, а IEHINITT – системной утилитой (IEH), которая инициализировала (INIT) метки магнитных лент (T). Как объясняется далее в разделе "Использование", название "BR14" происходит от инструкции языка ассемблера IBM "Branch (to the address in) Register 14", которая по соглашению используется для "возврата из подпрограммы". Большинство первых пользователей OS/360 были знакомы с языком ассемблера IBM и сразу бы узнали это.