В мэйнфрейм IBM операционные системы, Базовый метод последовательного доступа (BSAM ) - это метод доступа для чтения и записи наборы данных последовательно. BSAM доступен в OS / 360, OS / VS2, MVS, z / OS и связанных операционных системах.
BSAM используется для естественно последовательных устройств, таких как считыватели перфокарт, перфокарты, строчные принтеры и магнитная лента. Он также используется для данных об устройствах, к которым можно обращаться напрямую, например, магнитных дисках. BSAM предлагает независимость от устройств: насколько это возможно, для разных устройств используются одни и те же вызовы API.
BSAM позволяет программам читать и записывать физические блоки данных, в отличие от более мощного, но менее гибкого метода последовательного доступа с очередями (QSAM), который позволяет программам доступ к логическим записям в физических блоках данных. Пользователь BSAM должен знать о возможности встретить короткие (усеченные) блоки (блоки в наборе данных, которые короче, чем BLKSIZE набора данных), особенно в конце набора данных, но также во многих случаях внутри набора данных. QSAM не имеет ни одного из этих ограничений.
Программист указывает DSORG = PS
в его блоке управления данными (DCB), чтобы указать на использование BSAM. В качестве основного метода доступа BSAM считывает и записывает данные элементов в блоках, а операция ввода-вывода выполняется асинхронно и должна быть проверена на завершение с помощью макроса CHECK
. BSAM использует стандартные системные макросы OPEN
, CLOSE
, READ
, WRITE
и CHECK
. Макрокоманда NOTE
возвращает позицию последнего прочитанного или записанного блока, а макрос POINT
переместит позицию в положение, указанное предыдущим NOTE
.
, если набор данных unblocked, то есть длина логической записи (LRECL) равна размеру физического блока (BLKSIZE), BSAM может использоваться для имитации набора данных, к которому осуществляется прямой доступ, используя NOTE
и POINT
на любой поддерживаемый тип устройства прямого доступа (DEVD = DA) и некоторые примитивные приложения были разработаны таким образом.
Интерфейс прикладной программы BSAM можно сравнить с интерфейсом, предлагаемым вызовами open, read, write и close (с использованием файловых дескрипторов) в других операционных системах, таких как Unix и Windows. POINT
обеспечивает аналог поиска или lseek, а ftell является эквивалентом ПРИМЕЧАНИЕ
.