Базовый метод прямого доступа - 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

Смотрите также

использованная литература

  1. ^ IBM System / 360 Operating System Basic Direct Access Method Program Логическое руководство (PDF). IBM. Июль 1967 г. Y28-6617-3.
  2. ^ а б c d Управление данными операционной системы IBM System / 360 (PDF). IBM. Апрель 1966 г. C28-6537-1.
  3. ^ CICS и BDAM, Информационный центр IBM
  4. ^ Корпорация IBM (июнь 1973 г.). Макроинструкции для управления данными ОС (PDF). Получено 19 августа, 2016.
  5. ^ Корпорация IBM. «Выполнение программ прямого доступа».
  6. ^ Руководство по службам управления данными ОС (PDF). IBM. Июль 1973 года. GC26-3746-2.

внешние ссылки