stringtranslate.com

Sistema de archivos orientado a registros

En informática , un sistema de archivos orientado a registros es un sistema de archivos en el que los datos se almacenan como colecciones de registros . Esto contrasta con un sistema de archivos orientado a bytes, en el que los datos se tratan como un flujo de bytes sin formato . Hay varios formatos de registro posibles diferentes; los detalles varían según el sistema en particular. En general, los formatos pueden ser de longitud fija o de longitud variable, con diferentes organizaciones físicas o mecanismos de relleno; los metadatos pueden estar asociados con los registros de archivo para definir la longitud del registro, o los datos pueden ser parte del registro. Se pueden proporcionar diferentes métodos de acceso a los registros, por ejemplo, los registros pueden recuperarse en orden secuencial , por clave o por número de registro.

Origen y características

Los sistemas de archivos orientados a registros se asocian frecuentemente con sistemas operativos mainframe, como OS/360 y sucesores [1] y DOS/360 y sucesores , y sistemas operativos de rango medio, como RSX-11 y VMS . Sin embargo, se originaron antes en software como el Sistema de control de entrada/salida (IOCS). [2] Los registros, a veces llamados registros lógicos, a menudo se escriben juntos en bloques, a veces llamados registros físicos; esta es la norma para dispositivos de acceso directo y de cinta, pero los archivos en dispositivos de registro unitario normalmente están desbloqueados, es decir, solo hay un registro por bloque.

Los sistemas de archivos orientados a registros pueden admitirse en medios distintos a los dispositivos de acceso directo. Una baraja de tarjetas perforadas puede considerarse un archivo orientado a registros. Una cinta magnética es un ejemplo de un medio que puede admitir registros de longitud uniforme o de longitud variable.

En un sistema de archivos de registro, un programador diseña los registros que se pueden utilizar en un archivo. Todos los programas de aplicación que acceden al archivo, ya sea agregando, leyendo o actualizando registros, comparten una comprensión del diseño de los registros. En DOS/360, OS/360 y sus sucesores, no hay restricción en los patrones de bits que componen el registro de datos, es decir, no hay ningún carácter delimitador; esto no siempre es así en otro software, por ejemplo, ciertos tipos de registro para el procesador de control de archivos RCA (FCP) en los 301, 501, 601 y 3301.

El archivo se crea cuando se emite una solicitud de creación de archivo al sistema de archivos. Es posible que se incluya cierta información sobre el archivo con la solicitud de creación. Esta información puede especificar que el archivo tiene registros de longitud fija (todos los registros tienen el mismo tamaño) junto con el tamaño de los registros. Alternativamente, la especificación puede indicar que los registros tienen una longitud variable, junto con la longitud máxima de registro. Se puede especificar información adicional, incluido el factor de bloqueo, binario frente a texto y la cantidad máxima de registros.

Se puede permitir leer solo el comienzo de un registro; la siguiente lectura secuencial devuelve la siguiente colección de datos (registro) que el escritor pretendía agrupar. También se puede permitir escribir solo el comienzo de un registro. En estos casos, el registro se rellena con ceros binarios o con espacios, dependiendo de si el archivo se reconoce como un archivo binario o un archivo de texto.

Algunos sistemas operativos requieren que se incluyan en el programa rutinas de biblioteca específicas para el formato de registro. Esto significa que un programa que originalmente se esperaba que leyera un archivo de registro de longitud variable no puede leer un archivo de longitud fija. Estos sistemas operativos deben proporcionar utilidades de sistema de archivos para convertir archivos entre un formato y otro. Esto significa que puede ser necesario copiar el archivo (lo que requiere espacio de almacenamiento adicional, tiempo y coordinación).

Otros sistemas operativos incluyen varias rutinas y asocian la rutina adecuada, en función de la organización de los archivos, en el momento de la ejecución.

En cualquier caso, se deben proporcionar cantidades significativas de código para administrar registros en rutinas protegidas para garantizar la integridad de los archivos.

Una alternativa a un archivo orientado a registros es un archivo de flujo, en el que el sistema de archivos trata un archivo como una secuencia no estructurada de bytes. Las aplicaciones pueden imponer una estructura de registro, aunque no es necesario. Este enfoque reduce significativamente el tamaño y la complejidad de la biblioteca y reduce la cantidad de utilidades necesarias para mantener los archivos.

Una convención de aplicación común para los archivos de texto representados como secuencias es utilizar un delimitador de nueva línea para separar o terminar registros, normalmente CR , CRLF o LF. Lamentablemente, el tiempo de CPU necesario para analizar el delimitador de registros es significativo y la exclusión del patrón delimitador de registros de los datos suele ser indeseable.

Una convención alternativa es incluir un campo de longitud en cada registro. La aplicación de escritura es responsable de imponer cualquier estructura de registro y la aplicación de lectura es responsable de separar los registros.

Ventajas y costos

Un archivo orientado a registros tiene varias ventajas. Después de que un programa escribe una colección de datos como un registro, el programa que lee ese registro comprende que esos datos son una colección. A menudo, un archivo contendrá varios registros relacionados en secuencia; después de que el programa lea el comienzo de la secuencia, la siguiente lectura secuencial devuelve la siguiente colección de datos (registro) que el escritor pretendía agrupar. Otra ventaja es que el registro tiene una longitud y, por lo general, no hay restricciones en los patrones de bits que componen el registro de datos, es decir, no hay ningún carácter delimitador.

Los archivos orientados a registros suelen tener un coste asociado. En el caso de los registros de longitud fija, algunos registros pueden tener espacio sin utilizar, mientras que en el caso de los registros de longitud variable, el delimitador o el campo de longitud ocupan espacio. Los bloques de longitud variable pueden tener una sobrecarga debido a los delimitadores o los campos de longitud. Además, existe una sobrecarga impuesta por el dispositivo. En una cinta magnética, la sobrecarga suele adoptar la forma de un espacio entre registros. En un dispositivo de acceso directo con sectores de longitud fija, puede haber espacio sin utilizar en el último sector de un bloque. En un dispositivo de acceso directo con registros físicos de longitud variable, esa sobrecarga suele adoptar la forma de metadatos y espacios entre registros.

En un archivo compuesto de registros de longitud variable, se define una longitud máxima de registro para determinar el tamaño de los metadatos de longitud asociados con cada registro.

Una de las principales ventajas de los sistemas de archivos basados ​​en registros es que abstraen los archivos que antes se guardaban en papel. Un registro puede contener datos asociados a un determinado elemento, por ejemplo, un edificio, un contacto, un empleado, una pieza o un lugar.

Un segundo motivo para la idea de la orientación de registros es que, en cierto sentido, es la orientación más natural para el almacenamiento persistente en un dispositivo de almacenamiento físico no volátil pero lento. La mayoría de los dispositivos de almacenamiento físico pueden comunicarse solo en unidades de un bloque. Porciones significativas de los núcleos de los sistemas operativos modernos y los controladores de dispositivos asociados están dedicados a ocultar la naturaleza naturalmente estructurada y delimitada (y en cierto sentido un bloque es solo un registro físico) de los dispositivos de almacenamiento físico. No es coincidencia que los sistemas de archivos orientados a registros surgieran antes en la historia de la informática que los sistemas de archivos orientados a flujo de bytes, cuando las capacidades de abstracción eran mucho menores.

Véase también

Referencias

  1. ^ z/OS DFSMS Using Data Sets Versión 2, lanzamiento 3 (PDF) , 2 de octubre de 2018, SC23-6855-30
  2. ^ Manual de referencia, Sistema de control de entrada/salida IBM 709/7090 (PDF) . IBM . p. 3. C28-6100-2 . Consultado el 12 de septiembre de 2020 .