Базовый метод прямого доступа - Basic direct access method
Базовый метод прямого доступа, или BDAM является метод доступа для IBM OS / 360 и последователи компьютер операционные системы на Система / 360 и позже мэйнфреймы. BDAM "состоит из процедур, используемых для извлечения данных и сохранения данных на нем. устройства прямого доступа."[1]:стр.5 BDAM доступен на OS / 360, OS / VS2, MVS, z / OS и связанные с ними высокопроизводительные операционные системы.
Описание
Базовыйв терминологии IBM означает метод доступа нижнего уровня, который имеет дело с наборы данных с точки зрения физического блоки и не обеспечивает упреждающего чтения, называемого упреждающая буферизация, или синхронизация - то есть пользовательская программа должна явно ждать завершения каждого события ввода / вывода.[2]:стр.31
С помощью BDAM "программист может напрямую сохранять и извлекать блок, указав его фактический адрес устройства, его относительное положение в наборе данных (относительный номер блока) или относительный трек в наборе данных, с которого система должна начать поиск.[2]:стр.63
BDAM не предоставляет никакого индекса или структуры для файла, за исключением случаев, запрограммированных приложением. Во многих приложениях для назначения адреса блока на основе ключа в данных может использоваться функция хеширования или рандомизации. Если физический ключи используются, ключ последней записи в блоке должен быть записан как ключ для этого блока.
Интерфейс прикладной программы BDAM можно сравнить с интерфейсом, предлагаемым открыто, читать, записывать и близко вызовы (с использованием дескрипторов файлов) в других операционных системах, таких как Unix и Windows.
BDAM по-прежнему поддерживается IBM с 2012 года. Из-за его зависимости от геометрии физического устройства новые устройства прямого доступа IBM, используемые с z / OS, эмулируют IBM 3390 устройства независимо от их реальных физических характеристик.
Интерфейс прикладной программы
Программист указывает DSORG = DA
в его Блок управления данными (DCB) для обозначения использования BDAM. Помещение может быть до 16 экстенты на каждом объем. Набор данных (эквивалент «файла») может размещаться в 255 экстентах на нескольких томах. Если приложение зависит от пространства на смежных дорожках, вы можете выделить пространство для прямого набора данных в смежный треки по кодированию ПРОБЕЛ = (,, ПРОДОЛЖЕНИЕ)
по заявлению DD.
Перед использованием наборы прямых данных необходимо предварительно отформатировать, открыв их как выходные данные и последовательно записав все блоки. Это может загрузить все «фиктивные» записи или загрузить исходные данные.[3]
Как основной метод доступа BDAM читает и записывает данные членов в блоки и операция ввода-вывода продолжается асинхронно и должны быть проверены на завершение с помощью ПРОВЕРЯТЬ
макрос.[4] BDAM использует стандартные системные макросы ОТКРЫТО
, БЛИЗКО
, ЧИТАТЬ
, ЗАПИСЫВАТЬ
,и ПРОВЕРЯТЬ
. В ЧИТАТЬ
или ЗАПИСЫВАТЬ
инструкции макроса должен предоставить адрес блока или ключ желаемой записи. В ПРОВЕРЯТЬ
макрос должен использоваться для ожидания завершения определенной операции, прежде чем можно будет получить доступ к данным или буфер данных повторно используется. Можно запускать несколько операций ввода / вывода одновременно.
Записи в прямом наборе данных могут содержать указанные пользователем записанные ключи до 255 байт - все ключи в файле должны быть одинаковой длины. Чтения и записи могут указывать ключ в дополнение к адресу диска, и BDAM будет искать запись с совпадающим ключом, начиная с запрошенного блока и заканчивая всей областью файла.[2] Это позволяет использовать несколько ключей хеширование на тот же трек, который будет обрабатываться автоматически подсистемой ввода-вывода.
Адреса дисков
BDAM принимает адреса дисков как фактические адреса устройств, как относительные адреса дорожек или как относительные номера блоков.
Адреса устройств восемь байтовых полей в форме МББЧПЧ. Все подполя представляют собой двоичные числа.[5]
- M это номер экстента для файлов с более чем одним степень (несмежные файлы).
- BB равно нулю. Ранее это указывало на мусорное ведро на Ячейка данных IBM 2321.
- CC - это абсолютный номер цилиндра на устройстве.
- HH - номер дорожки (головы).
- р номер записи на треке. Нулевая запись содержит управляющую информацию для трека и не может быть использована.
Указание адресов устройств делает набор данных неподвижный.[2]:стр.106
Относительные адреса треков - трехбайтовые поля в форме TTR. Все подполя представляют собой двоичные числа.
- TT - относительный номер дорожки в файле, начиная с нуля.
- р номер записи на треке.
Относительные номера блоков представляют собой четырехбайтовые (полные слова) двоичные числа, указывающие номер блока в файле. Первый блок - это нулевой блок. Эта форма адресации может использоваться только с блоками фиксированной длины (RECFM = F
).[6]:стр.106
Смотрите также
использованная литература
- ^ IBM System / 360 Operating System Basic Direct Access Method Program Логическое руководство (PDF). IBM. Июль 1967 г. Y28-6617-3.
- ^ а б c d Управление данными операционной системы IBM System / 360 (PDF). IBM. Апрель 1966 г. C28-6537-1.
- ^ CICS и BDAM, Информационный центр IBM
- ^ Корпорация IBM (июнь 1973 г.). Макроинструкции для управления данными ОС (PDF). Получено 19 августа, 2016.
- ^ Корпорация IBM. «Выполнение программ прямого доступа».
- ^ Руководство по службам управления данными ОС (PDF). IBM. Июль 1973 года. GC26-3746-2.
внешние ссылки
- Введение в устройства хранения с прямым доступом IBM и методы организации (PDF). IBM. Февраль 1974 г. GC20-1649-9.