El método básico de acceso directo , o BDAM, es un método de acceso para los sistemas operativos informáticos OS / 360 y sucesores de IBM en System / 360 y mainframes posteriores . BDAM "consta de rutinas que se utilizan para recuperar datos y almacenar datos en dispositivos de acceso directo ". [1] : p.5 BDAM está disponible en OS / 360 , OS / VS2 , MVS , z / OS y sistemas operativos de gama alta relacionados.
Descripción
Básico , en terminología de IBM, indica un método de acceso de nivel inferior que trata con conjuntos de datos en términos de bloques físicos y no proporciona lectura anticipada, llamada almacenamiento en búfer anticipatorio , ni sincronización , es decir, el programa de usuario tiene que esperar explícitamente finalización de cada evento de entrada / salida. [2] : pág . 31
Con BDAM, "el programador puede almacenar y recuperar directamente un bloque especificando su dirección de dispositivo real , su posición relativa dentro de un conjunto de datos (número de bloque relativo) o la pista relativa dentro de un conjunto de datos en el que el sistema debe comenzar un búsqueda. [2] : p.63
BDAM no proporciona índice ni estructura al archivo, excepto según lo programado por la aplicación. En muchas aplicaciones, se puede usar una función de hash o aleatorización para asignar la dirección del bloque en función de una clave en los datos. Si se utilizan claves físicas , la clave del último registro dentro del bloque debe escribirse como clave para ese bloque.
La interfaz del programa de aplicación BDAM se puede comparar con la interfaz que ofrecen las llamadas de apertura , lectura , escritura y cierre (mediante identificadores de archivos) en otros sistemas operativos como Unix y Windows .
BDAM todavía es compatible con IBM a partir de 2012. Debido a su dependencia de la geometría del dispositivo físico, los nuevos dispositivos de acceso directo de IBM utilizados con z / OS emulan los dispositivos IBM 3390 independientemente de sus características físicas reales.
Interfaz del programa de aplicación
El programador especifica DSORG=DA
en su bloque de control de datos (DCB) para indicar el uso de BDAM. El espacio puede tener hasta 16 extensiones en cada volumen . El conjunto de datos (equivalente a un "archivo") puede residir en hasta 255 extensiones en varios volúmenes. Si la aplicación depende de que el espacio esté en pistas contiguas, puede asignar espacio para el conjunto de datos directos en pistas contiguas codificando SPACE=(,,CONTIG)
en la declaración DD.
Los conjuntos de datos directos deben formatearse previamente antes de su uso abriéndolos como salida y escribiendo todos los bloques secuencialmente. Esto puede cargar todos los registros "ficticios" o cargar datos iniciales. [3]
Como método de acceso básico , BDAM lee y escribe datos de miembros en bloques y la operación de E / S procede de forma asincrónica y debe comprobarse su finalización utilizando la CHECK
macro. [4] BDAM utiliza las macros estándar del sistema OPEN
, CLOSE
, READ
, WRITE
, y CHECK
. Las instruccionesREAD
o WRITE
macro deben proporcionar la dirección de bloque o la clave del registro deseado. La CHECK
macro debe usarse para esperar a que se complete una operación específica antes de que se pueda acceder a los datos o se pueda reutilizar el búfer de datos . Es posible iniciar múltiples operaciones de entrada / salida para que se ejecuten simultáneamente.
Los registros de un conjunto de datos directos pueden contener claves grabadas especificadas por el usuario de hasta 255 bytes; todas las claves de un archivo deben tener la misma longitud. Las lecturas y escrituras pueden especificar una clave además de una dirección de disco, y BDAM buscará comenzando en el bloque solicitado hasta el área completa del archivo para un registro con una clave coincidente. [2] Esto permite que el subsistema de E / S maneje automáticamente el hash de varias claves en la misma pista.
Direcciones de disco
BDAM acepta direcciones de disco como direcciones de dispositivos reales, como direcciones de pistas relativas o como números de bloques relativos.
Las direcciones de los dispositivos son campos de ocho bytes con el formato MBBCCHHR . Todos los subcampos son números binarios. [5]
- M es el número de extensión para archivos con más de una extensión (archivos no contiguos).
- BB es cero. Anteriormente, esto indicaba el contenedor en una celda de datos IBM 2321 .
- CC es el número de cilindro absoluto en el dispositivo.
- HH es el número de pista (cabeza).
- R es el número de registro en la pista. El registro cero contiene información de control de la pista y no se puede utilizar.
La especificación de direcciones de dispositivo hace que el conjunto de datos sea inamovible . [2] : pág . 106
Las direcciones de pista relativas son campos de tres bytes con el formato TTR . Todos los subcampos son números binarios.
- TT es el número de pista relativo en el archivo, comenzando con cero.
- R es el número de registro en la pista.
Los números de bloque relativos son números binarios de cuatro bytes (palabra completa) que indican el número de bloque en el archivo. El primer bloque es el bloque 0. Esta forma de direccionamiento solo se puede utilizar con bloques de longitud fija ( RECFM=F
). [6] : pág . 106
Ver también
Referencias
- ^ Manual de lógica del programa del método de acceso directo básico del sistema operativo IBM System / 360 (PDF) . IBM. Julio de 1967. Y28-6617-3.
- ^ a b c d Gestión de datos del sistema operativo IBM System / 360 (PDF) . IBM. Abril de 1966. C28-6537-1.
- ^ CICS y BDAM , centro de información de IBM
- ^ IBM Corporation (junio de 1973). Instrucciones macro de gestión de datos del sistema operativo (PDF) . Consultado el 19 de agosto de 2016 .
- ^ IBM Corporation. "Ejecución de programas de acceso directo" .
- ^ Guía de servicios de gestión de datos del sistema operativo (PDF) . IBM. Julio de 1973. GC26-3746-2.
enlaces externos
- Introducción a los métodos de organización y dispositivos de almacenamiento de acceso directo de IBM (PDF) . IBM. Febrero de 1974. GC20-1649-9.