Базовый метод секционированного доступа - Basic partitioned access method
В Мэйнфрейм IBM операционные системы, основной метод секционированного доступа (BPAM)[1] является метод доступа за библиотеки, называется секционированные наборы данных (PDSes) в терминологии IBM. BPAM используется в OS / 360, OS / VS2, MVS, z / OS, и другие.
PDS состоит из элементов (внутренне идентичных последовательные наборы данных ), зарегистрированный в списке, называемом каталог. Комбинация членов и каталога представляет собой единый набор данных на диске. Каталог содержит список имен участников (8 символов, дополненных пробелами справа, если требуется) и адреса участников. Адреса указываются относительно начала набора данных, чтобы можно было переместить PDS в другое место на диске.
В секционированных наборах данных могут храниться данные любого типа, но они часто используются для хранения исполняемые программы, или же загрузить модули, иногда называемые двоичными файлами в других системах. Другое использование включает системный ассемблер макрос определения, контроль работы процедуры и исходный код программы.
Интерфейс прикладной программы
BPAM обеспечивает интерфейс прикладной программы (API), чтобы позволить программистам напрямую обращаться к библиотекам. API BPAM похож на базовый метод последовательного доступа (BSAM), но он добавляет функциональность в каталоги процессов. Отдельные элементы PDS также можно обрабатывать с помощью методов последовательного доступа, указав имя члена в элементе управления заданием. DD утверждение.
Программист указывает DSORG = PO
в их Блок управления данными (DCB) для обозначения использования BPAM. базовый метод доступа BPAM читает и записывает данные членов в блоки и операция ввода-вывода продолжается асинхронно и должны быть проверены на завершение с помощью ПРОВЕРИТЬ
макрос.[2] BPAM использует стандартные системные макросы ОТКРЫТО
, ЗАКРЫТЬ
, ЧИТАТЬ
, ЗАПИСЫВАТЬ
,и ПРОВЕРИТЬ
. В ПРИМЕЧАНИЕ
Макро-инструкция возвращает позицию последнего прочитанного или записанного блока, а ТОЧКА
макрос переместится в место, указанное предыдущим ПРИМЕЧАНИЕ
.[2] В BLDL
макрос может быть использован для создания списка адресов членов, указанных программистом, для последующего использования, если это необходимо. НАЙТИ
позиции к одному члену, указанному по имени, что требует поиска в каталоге на диске, или по адресу, ранее полученному BLDL
. В STOW
макрос используется для обновления каталога при добавлении, удалении, изменении (включая переименование) или замене члена.[3]
Загрузочные модули
Операционная система требует, чтобы все исполняемые программы хранились в библиотеках, поскольку запись в каталоге участника содержит дополнительную информацию об атрибутах, специфичную для загружаемых модулей. При использовании для хранения модулей загрузки каталоги также содержат, среди других данных, размер модуля загрузки и адрес первой «текстовой записи», которая отличается от адреса данных первого элемента. Исполняемые программы записываются в библиотеки редактор связей и загружается в пользовательское хранилище загрузчиком (прикладной программой) или в системное хранилище с помощью Program Fetch (компонент ОС руководитель ).
Редактор связей организует загрузочный модуль в специализированном формате, состоящем из чередующихся «текстовых записей» и «записей словаря управления / перемещения». Такая организация позволяет полностью загрузить и переместить загрузочный модуль с помощью одной операции ввода / вывода с помощью Program Fetch (EXCP в системах до MVS или STARTIO в системах MVS / 370 и более поздних).
Рекомендации
- ^ Логическое руководство программы методов последовательного доступа к операционной системе IBM System / 360 (PDF). IBM. Январь 1967 г. Y28-6604-1.
- ^ а б Корпорация IBM (июнь 1973 г.). Макроинструкции для управления данными ОС (PDF). п. 157. Получено 19 августа, 2016.
- ^ Корпорация IBM (июль 1973 г.). Руководство по службам управления данными ОС (PDF). стр. 75–85. Получено 19 августа, 2016.