Archivos-11

Files-11 (también conocido como estructura en disco  )  es un sistema de archivos  utilizado en el sistema operativo OpenVMS , así como en una forma más simple en el antiguo sistema operativo RSX-11. Es un sistema de archivos jerárquico compatible con listas de control de acceso . E/S orientadas a la escritura, acceso remoto a la red y versiones de archivos.

Files-11 es similar a los sistemas de archivos utilizados en los sistemas operativos DEC anteriores , como TOPS-20 y RSTS/E , pero es mucho más avanzado.

Historia

El sistema de archivos nativo de OpenVMS proviene y es similar a los sistemas operativos DEC más antiguos en muchos aspectos. La principal diferencia es la ubicación de los directorios. Estos sistemas de archivos proporcionan algún tipo de estructura de directorio no jerárquica rudimentaria, generalmente basada en la asignación de un directorio por cuenta de usuario. En RSTS/E, cada cuenta de usuario estaba representada por dos números, el par [proyecto.programador], y tenía un directorio asociado. Los archivos especiales del sistema, como los ejecutables del programa y el propio sistema operativo, se almacenaron en un directorio reservado para la cuenta del sistema.

Si bien esto era aplicable en los sistemas PDP-11 , que tenían una capacidad de ROM limitada, los sistemas VAX con discos duros mucho más grandes requerían un método más flexible para almacenar archivos: en particular, la disposición jerárquica de directorios, la mejora más notable en el ODS-2.

Resumen

Files-11 es el nombre genérico de cinco sistemas de archivos separados, conocidos como niveles 1 a 5 de la estructura en disco (ODS).

ODS-1  es el sistema de archivos planos utilizado en el sistema operativo RSX-11; compatible con versiones anteriores del sistema operativo VMS para la compatibilidad con RSX-11, pero nunca utilizado por el propio VMS; ha sido reemplazado casi universalmente por ODS-2 y ODS-5.

ODS-2  , el sistema de archivos estándar para VMS, sigue siendo el sistema de archivos más utilizado para la unidad del sistema (la unidad en la que está instalado el sistema operativo).

Aunque rara vez se hace referencia a ellos por su designación de nivel ODS, ODS-3 y ODS-4 son compatibles con Files-11 para los sistemas de archivos ISO 9660 y High Sierra CD , respectivamente.

ODS-5 es una versión extendida de ODS-2, disponible para las plataformas Alpha o Itanium , que agrega soporte para conservar mayúsculas y minúsculas para nombres de archivo que no sean ASCII y mejora el soporte para directorios jerárquicos. Originalmente fue diseñado para servir archivos en Microsoft Windows u otros sistemas que no sean VMS como parte del proyecto NT affinity , pero también se usa en discos de usuario y servidores de Internet .

Ubicación de directorios

Todos los archivos y directorios en un sistema de archivos Files-11 residen en uno o más directorios principales y, finalmente, en el directorio raíz, el directorio de archivos maestro (MFD). Por lo tanto, el sistema de archivos está organizado en una estructura de árbol.

En el ejemplo de la derecha, el Archivo 2 tiene una entrada en los directorios Dir 2 y Dir 3; está en ambos directorios al mismo tiempo. Incluso si se elimina de un directorio, seguirá existiendo en otro hasta que también se elimine de allí. Esto es muy similar al concepto de enlaces duros en UNIX , aunque aquí se debe tener cuidado de no eliminar un archivo en unidades que no admitan enlaces duros. Los enlaces físicos solo están disponibles en unidades ODS-5 y solo si están habilitados en esas unidades.

Organización del disco y denominación

Un sistema VMS en funcionamiento tiene acceso a una o más unidades conectadas permanentemente, cada una de las cuales contiene un sistema de archivos completo e independiente. Son almacenamiento local o, en el caso de un clúster , almacenamiento compartido con sistemas remotos.

En una configuración de clúster de OpenVMS, todos los nodos del clúster comparten los discos no privados (consulte la Figura 1). En esta configuración, dos discos del sistema están disponibles para ambos nodos del clúster, pero el disco privado no se comparte: solo se monta para que lo use un solo usuario o proceso en la primera máquina. El acceso a los archivos en el clúster está controlado por OpenVMS Distributed Lock Manager, una parte integral del sistema de archivos.

Se pueden combinar varios discos en un conjunto de volumen o disco lógico más grande. Las unidades también se pueden copiar automáticamente en sombras para proteger los datos o mejorar el rendimiento de lectura.

Se hace referencia a una unidad por su nombre físico o (más comúnmente) por un nombre lógico especificado por el usuario. Por ejemplo, un dispositivo de arranque (la unidad del sistema) podría tener un nombre físico de $3$DKA100, pero normalmente se le denominaría con un nombre lógico de SYS$SYSDEVICE.

El sistema de archivos en cada disco (con la excepción de ODS-1) es jerárquico. La especificación completa del archivo consta del nombre de host, el nombre de la cuenta de usuario y la contraseña, el nombre del dispositivo, el directorio, el nombre del archivo, el tipo de archivo y la versión del archivo, y tiene el siguiente formato:

NODE"contraseña de nombre de cuenta"::dispositivo:[directorio.subdirectorio]nombre de archivo.tipo;versión nodo"contraseña de usuario"::dispositivo:[dir]nombre de archivo.tipo de archivo;versión

Por ejemplo, [DIR1.DIR2.DIR3]ARCHIVO.EXT hará referencia a la última versión de ARCHIVO.EXT en la unidad predeterminada en el directorio [DIR1.DIR2.DIR3].

DIR1 es un subdirectorio del directorio de archivos principal (MFD), o directorio raíz, y DIR2 es un subdirectorio de DIR1. El directorio de archivos principal se define como [000000].

Se pueden omitir muchas partes de la especificación del archivo, en cuyo caso se toman de la especificación del archivo predeterminado actual. La especificación de archivo predeterminada reemplaza el concepto de "directorio actual" en otros sistemas operativos al proporcionar un conjunto de configuraciones predeterminadas para el host, el nombre del dispositivo y el directorio. Todos los procesos tienen una especificación de archivo predeterminada que contiene el nombre de la unidad y el directorio, y la mayoría de las rutinas del sistema de archivos VMS aceptan una especificación de archivo predeterminada que también puede contener el tipo de archivo; el comando TYPE, por ejemplo, espera ".LIS" como el tipo de archivo predeterminado, por lo que si le da al comando TYPE un nombre de archivo F sin extensión, intentará abrir el archivo F.LIS.

Cada archivo tiene un número de versión, que por defecto es 1 si no hay otras versiones de ese archivo (de lo contrario, una más que la versión más alta). Cada vez que guarde o sobrescriba una versión existente, se creará un nuevo archivo con el mismo nombre pero con el número de versión incrementado en 1. Las versiones anteriores se pueden eliminar explícitamente con los comandos DELETE o PURGE, o bien, las versiones anteriores de un archivo se pueden eliminar automáticamente cuando se alcanza el límite de versión del archivo (establecido por el comando SET FILE/VERSION_LIMIT). En este caso, las versiones anteriores no se sobrescriben, sino que se almacenan en el disco y se pueden restaurar en cualquier momento. El límite del número de versión integrado es 32767. El mecanismo de control de versiones se puede desactivar fácilmente si no es necesario. En particular, los archivos que se actualizan directamente, como las bases de datos, no crean nuevas versiones a menos que estén específicamente programados para hacerlo.

ODS-2 está limitado a 8 niveles de anidamiento de directorios, y los nombres de archivo son solo en mayúsculas, nombres alfanuméricos (más guión bajo, guión y signo de dólar) hasta 39,39 caracteres (39 para nombre de archivo y otros 39 para extensión). ODS-5 amplió el conjunto de caracteres a minúsculas y la mayoría de los demás caracteres ASCII, así como a los caracteres ISO Latin-1 y Unicode , aumentó la longitud máxima del nombre de archivo y niveles ilimitados de anidamiento de directorios. Al construir un nombre de archivo completo para un archivo ODS-5 que usa caracteres no permitidos en ODS-2, se usa la sintaxis especial "^" para preservar la compatibilidad con versiones anteriores; el archivo "file.tar.gz;1" en el disco ODS-5, por ejemplo, se llamaría "file^.tar.gz" - el nombre del archivo sería "file.tar" y la extensión ".gz" .

Seguridad de Archivos: Listas de Seguridad y Control de Acceso

La protección de archivos en VMS se define mediante dos mecanismos: control de acceso basado en código de identificación de usuario (UIC) y control de acceso basado en ACL. El control de acceso basado en ID de usuario se basa en el propietario del archivo y su ID, o la ID del usuario que desea acceder al archivo. El acceso está determinado por cuatro grupos de permisos:

Y cuatro bits de permiso:

El acceso al sistema se aplica a cualquier usuario cuyo código de identificación sea menor o igual al parámetro SYSGEN MAXSYSGROUP (típicamente 8 o 10 octal) (por ejemplo, el usuario del SISTEMA); el acceso de propietario y grupo se aplica al propietario del archivo y su grupo al que pertenece, mientras que el acceso mundial se aplica a cualquier otro usuario. También hay un quinto bit de permisos, Control, que se usa para determinar el acceso para modificar los metadatos del archivo, como la protección. Este grupo no se puede configurar explícitamente; siempre se establece para Sistema y Propietario, y nunca para Grupo o Mundo.

El control de acceso basado en código de autenticación también se ve afectado por cuatro privilegios del sistema que le permiten mantenerlos para evitar el secuestro del control de acceso:

Una ACL le permite asignar privilegios adicionales a un usuario o grupo; por ejemplo, el código de identidad de usuario de un servidor web podría recibir el derecho de leer todos los archivos en un directorio en particular. Las ACL se pueden marcar como heredadas, donde las ACL de archivo para un directorio se aplican a todos los archivos en él. Los cambios en las listas de control de acceso se realizan con el comando EDIT/ACL y tienen la forma de un par identificador/permiso_derechos. Por ejemplo, una entrada en la ACL del comando

(IDENTIFICADOR=HTTP$SERVIDOR,ACCESO=LEER+EJECUTAR)

permitirá al usuario HTTP$SERVER leer y ejecutar archivos.

Nombres lógicos

El nombre lógico es una variable del sistema que puede hacer referencia a una unidad, directorio o archivo, o contener otra información del programa. Por ejemplo, el nombre lógico SYS$SYSDEVICE contiene el dispositivo de arranque del sistema. Los nombres lógicos generalmente se refieren a un solo directorio o unidad, como SYS$LOGIN, que es el directorio de inicio de la cuenta de usuario; estos nombres lógicos no se pueden usar como nombres de unidades reales; SYS$LOGIN:[DIR]FILE no es una especificación de archivo válida. Sin embargo, los nombres lógicos ocultos definidos con el comando DEFINE/TRANSLATION=OCULTO se pueden usar para esto; estos directorios raíz terminan con un punto (".") carácter en la especificación del directorio, por lo que el comando

$ DEFINE/TRANS=OCULTAR DISCO INICIAL$USUARIOS:[nombre de usuario.]

permitirá que se utilice INICIO:[DIR]ARCHIVO. Más comunes son los nombres lógicos simples que apuntan a ciertos directorios asociados con algún software de aplicación, que pueden ubicarse en cualquier disco o en cualquier directorio. Por lo tanto, el nombre lógico ABC_EXE puede apuntar al directorio de programas ejecutables de la aplicación ABC, y ABC_TEMP puede apuntar al directorio de archivos temporales para la misma aplicación, y este directorio puede estar en el mismo disco y en el mismo directorio que ABC_EXE. , o puede estar en cualquier lugar en una unidad diferente (y en un árbol de directorios diferente).

Los nombres lógicos no tienen equivalentes cercanos en los sistemas operativos compatibles con POSIX . Son similares a las variables de entorno de UNIX , excepto que son expandidas por el sistema de archivos y no por el shell o el programa de aplicación. Deben definirse antes de su uso, por lo que son comunes a muchos nombres lógicos definidos en el archivo por lotes de inicio automático del sistema, así como en los archivos por lotes de cuentas de usuario.

El sistema operativo no relacionado con VMS más cercano que soporta el concepto de nombres lógicos es AmigaOS , a través del comando ASSIGN. El sistema operativo de disco AmigaDOS incluido en AmigaOS parece haber tomado mucho de VMS, dado que TRIPOS (del cual AmigaDOS es un puerto) estuvo fuertemente influenciado por VMS. Por ejemplo, los nombres de los dispositivos físicos siguen un patrón como DF0: para la primera unidad de disquete, CDROM2: para la tercera unidad de CD-ROM, etc. Sin embargo, dado que el sistema puede arrancar desde cualquier unidad conectada, el sistema operativo crea una unidad lógica el SYS: nombre asignado automáticamente para hacer referencia al dispositivo de arranque que se está utilizando. Otros destinos, LIBS:, PREFS:, C:, S: y otros, también se crean sin hacer referencia a SYS: mismos. Los usuarios, por supuesto, también pueden crear y eliminar sus propias asignaciones.

Los nombres lógicos pueden hacer referencia a otros nombres lógicos (hasta un límite de anidamiento predefinido de 10) y pueden contener listas de nombres para buscar nombres de archivos existentes. Algunos nombres lógicos comúnmente referidos son:

nombre lógico Sentido
SYS$INPUT equivalente a entrada estándar, fuente de datos para programas
SYS$OUTPUT equivalente a salida estándar, receptor de datos de programas
SYS$ERROR equivalente al registro de errores estándar, receptor de mensajes de error de los programas
SYS$COMMAND fuente de archivos por lotes (es decir, archivos por lotes con extensión .COM)
TT terminal asociado al proceso
SYS$PRINT impresora predeterminada o cola de impresión
SYS$LOGIN directorio de inicio para cada usuario
SYS$SCRATCH carpeta temporal, directorio para archivos temporales
SYS$SYSTEM directorio que contiene la mayoría de los programas del sistema y algunos archivos de datos vitales, como el archivo de autorización del sistema (cuentas y contraseñas)
SYS$SHARE bibliotecas de tiempo de ejecución compartidas, ejecutables, etc.
SYS$LIBRARY sistema y bibliotecas adicionales

E/S orientada a registros: Servicios de administración de registros

Record Management Services (abreviado RMS, Russian Record Management Services) es una capa de E/S estructural del sistema operativo VMS. RMS proporciona soporte de software integral para administrar archivos estructurados, como registros y archivos de bases de datos indexados. Se puede pensar en un sistema de archivos VMS como una base de datos que contiene una serie de registros, cada uno con uno de muchos campos individuales. Un archivo de texto, por ejemplo, es una lista de entradas (líneas) separadas por un carácter de nueva línea. RMS es un ejemplo de una implementación de un sistema de archivos orientado a la escritura.

Hay 4 formatos de registro definidos por RMS:

Hay 4 métodos para acceder a los registros o métodos para encontrar registros existentes en los archivos:

Capa física: estructura en disco

A nivel de disco, ODS representa el sistema de archivos como una matriz de bloques, un bloque consta de 512 bytes adyacentes en un disco físico (volumen). Los bloques de disco se asignan a clústeres (inicialmente 3 bloques contiguos, pero luego se aumentan para tamaños de disco más grandes). Idealmente, un archivo en el disco debe ser completamente contiguo, es decir, los bloques que contienen el archivo deben ubicarse secuencialmente, pero la fragmentación del disco a veces requerirá que el archivo se coloque en grupos no secuenciales, en cuyo caso los fragmentos se denominarán "extensiones". . Los discos se pueden combinar con otros discos para formar un volumen distribuido, y los archivos se pueden almacenar en cualquier parte del conjunto completo de discos, pero los tamaños de disco más grandes reducen el uso de volúmenes distribuidos porque los discos individuales son más fáciles de administrar.

Cada archivo en un disco (o volumen concatenado) con el sistema de archivos Files-11 tiene un identificador de archivo único (FID) que consta de 3 números: número de archivo (NUM), número de secuencia de archivo (SEQ) y número de volumen relativo (RVN) . NUM muestra dónde se encuentra el archivo INDEXF.SYS, que contiene los metadatos del archivo; SEQ es un número de generación que se incrementa cuando se elimina un archivo y se crea otro archivo al reutilizar la misma entrada en INDEXF.SYS (por lo que cualquier enlace roto al archivo anterior no apuntará accidentalmente al nuevo); RVN muestra el número de volumen en el que se almacena el archivo cuando se utiliza un volumen distribuido.

Catálogos

El soporte estructural para un volumen ODS se proporciona a través de un archivo de catálogo, un archivo especial que contiene una lista de nombres de archivos, versiones de archivos e identificadores de archivos asociados (FID). La raíz de la estructura de directorios es el directorio de archivos principal (MFD), el directorio raíz que contiene (directa o indirectamente) cada archivo del volumen.

(imagen)

Este diagrama muestra un ejemplo de un directorio que contiene 3 archivos y cómo cada nombre de archivo se asigna a una entrada en INDEXF.SYS (cada entrada de INDEXF contiene más información, aquí solo se muestran los primeros elementos).

Directorio de archivos principal

En el nivel superior de un sistema de archivos ODS se encuentra el directorio de archivos principal (MFD), que contiene todos los archivos del directorio de nivel superior (incluido él mismo) y varios archivos del sistema utilizados para almacenar información del sistema de archivos. Los volúmenes con ODS-1 usan una estructura de directorio de dos niveles: cada código de identificación de usuario (UIC) está asociado con un directorio de archivo de usuario (UFD) en la forma [GRUPO.USUARIO] ([GRUPO.USUARIO]). En ODS-2 y volúmenes posteriores, la disposición de los directorios en el directorio de archivos principal es arbitraria, sujeta a un límite de anidamiento de directorios (8 niveles en ODS-2 e ilimitado en ODS-5). En los volúmenes distribuidos, el directorio de archivos principal generalmente se almacena en el primer volumen y contiene subdirectorios de todos los volúmenes.

Los siguientes archivos del sistema están presentes en el directorio principal de archivos ODS:

Recuerde que la implementación del sistema de archivos en sí no se refiere a estos archivos por su nombre, sino por sus identificadores de archivo, que siempre tienen el mismo valor. Entonces, por ejemplo, INDEXF.SYS siempre es un archivo con NUM = 1 y SEQ = 1.

Archivo de índice: INDEXF.SYS

El archivo de índice contiene la información más básica sobre un volumen concatenado de Files-11.

Hay dos formas de organizar INDEXF.SYS, la organización tradicional y la organización utilizada en discos GPT.SYS con estructuras de tabla de particiones GUID (GPT).

En la organización tradicional, el bloque 1 es un bloque de inicio que contiene la ubicación de la imagen de inicio principal utilizada para iniciar el sistema operativo VMS. Siempre se encuentra en el disco en el bloque lógico 0 para que el firmware del hardware pueda leerlo. Este bloque siempre está presente, incluso en volúmenes que no son del sistema (que no son de arranque).

Después del bloque de arranque está el bloque de inicio principal. Contiene el nombre del volumen, la ubicación de las extensiones, incluido el resto del archivo de índice, el código de identificación de usuario (UIC) del propietario del volumen y la información de seguridad del volumen. Por lo general, hay varias copias adicionales del bloque de inicio, conocidas como bloques de inicio secundarios, para permitir que el volumen se restaure si se destruye o daña.

En los discos que tienen GPT.SYS, contiene el equivalente de un bloque de inicio (conocido como Master Boot Record (MBR)) y no tiene un bloque de inicio principal. Todos los bloques de inicio presentes en un disco GPT son bloques de inicio alternativos. Estos Las estructuras no se incluyen en INDEXF.SYS y los bloques del archivo INDEXF.SYS no se utilizan.

El resto del archivo de índice consta de encabezados de archivo que describen las extensiones en las que se encuentra el archivo en el volumen y los metadatos del archivo, como el código de identificación de usuario (UIC) del propietario, las listas de control de acceso y la información de seguridad. Cada archivo se describe mediante uno o más encabezados de archivo; es posible que se necesite más de uno cuando un archivo tiene una gran cantidad de extensiones. El encabezado del archivo es un bloque de longitud fija, pero contiene secciones de longitud fija y variable:

Siempre que sea posible, las secciones de mapa y ACL de un archivo de encabezado están contenidas en su totalidad en el encabezado principal (si hay más de uno). Sin embargo, si la información de ACL es demasiado larga o el archivo contiene demasiadas extensiones, no habrá suficiente espacio en el encabezado principal para almacenarlas. En este caso, se asigna un encabezado extendido para almacenar la información restante.

(imagen) Estructura del encabezado del archivo INDEXF.SYS

El encabezado del archivo comienza con 4 compensaciones (IDOFFSET, MPOFFSET, ACOFFSET y ROFFSET). Dado que el tamaño de las áreas después de los encabezados de longitud fija puede variar (como áreas como mapa y ACL), se requieren compensaciones para ubicar estas áreas adicionales. Cada desplazamiento es igual al número de palabras de 16 bits desde el comienzo del encabezado del archivo hasta el comienzo del área para la que se calcula el desplazamiento.

Si el archivo requiere varios encabezados, el número de extensión del segmento (SEGNUM) contiene el número de serie de este encabezado, comenzando desde 0 en la primera entrada en INDEXF.SYS.

STRUCLEV contiene el nivel de estructura actual (byte alto) y la versión (byte bajo) del sistema de archivos; ODS-2 tiene un nivel de estructura de 2. El aumento del número de versión indica un cambio compatible con versiones anteriores que el software anterior puede ignorar; los cambios a nivel de la estructura misma son incompatibles.

W_FID (contiene 3 valores: FID_NUM, FID_SEQ y FID_RVN, respectivamente archivo, secuencia y número de volumen relativo) contiene el identificador de este archivo; EXT_FID (también consta de 3 valores) contiene la ubicación del siguiente encabezado extendido, si lo hay. En ambos valores, RVN se define como 0 para representar el volumen "actual" (0 normalmente no es un RVN válido).

FILECHAR contiene varios indicadores que indican cómo debe procesarse u organizarse el archivo:

El indicador ACCMODE describe el nivel de privilegio con el que se puede ejecutar un proceso para acceder a un archivo. VMS define 4 niveles de privilegios: usuario, supervisor, ejecutivo y kernel. Cada tipo de acceso (lectura, escritura, ejecución y eliminación) está codificado con un valor entero de 2 bits.

El indicador FILEPROT contiene la información de control de acceso discrecional aplicable al archivo. Se divide en 4 grupos de 4 bits cada uno: sistema, propietario, grupo y mundo. El bit 0 es acceso de lectura, el bit 1 es acceso de escritura, el bit 2 es acceso de ejecución y el bit 3 es acceso de eliminación. Establecer el bit niega el acceso parcial al grupo; quitar la broca - permite.

Si el encabezado del archivo es un encabezado extendido, BACKLINK contiene el identificador de archivo del encabezado principal; de lo contrario, contiene el ID de archivo del directorio que contiene la entrada del archivo principal.

Otros archivos

El archivo de mapa de bits es responsable de almacenar información sobre el espacio utilizado y disponible en el volumen. Contiene un bloque de control de almacenamiento (SCB), que incluye información de resumen y un mapa de bits, una matriz de bits que indica si un grupo de bloques en el disco está libre o asignado. En versiones anteriores de VMS, el clúster constaba de 3 bloques, pero a medida que aumentaba el tamaño de los discos, también aumentaba el tamaño del clúster.

El archivo de bloques defectuosos contiene una lista de bloques defectuosos en el volumen físico para que el sistema pueda evitar asignarlos a archivos. Este archivo se usaba más en los primeros días cuando los discos generalmente se producían con muchos parches defectuosos en la superficie.

La lista de volúmenes del volumen fusionado se encuentra en el primer volumen del volumen fusionado y contiene una lista de las etiquetas de todos los volúmenes del conjunto y el nombre del conjunto de volúmenes.

Cuando un archivo se encuentra en un conjunto de varios volúmenes que cruza los límites de dos volúmenes separados, el archivo de continuación se usa como encabezado extendido y le indica al volumen dónde se puede encontrar el resto del archivo.

El archivo de cuota contiene información sobre el uso de la cuota de disco de cada UIC. Contiene una entrada para cada código de identificación de usuario con espacio asignado en el volumen, de acuerdo con la información sobre cuánto espacio puede ser utilizado por esta UIC. Nota: La función de cuota de disco es opcional y el archivo solo existirá si esta función se ha habilitado.

El perfil de seguridad del volumen contiene el UIC del propietario del volumen, la máscara de seguridad del volumen y la ACL del volumen.

Este archivo anula y protege las estructuras de disco MBR (Master Boot Record) y GPT (GUID Partitioning Table) utilizadas para el firmware compatible con EFI. Este archivo se crea de forma predeterminada durante la inicialización del disco en OpenVMS I64 y se crea opcionalmente (con el comando INITIALIZE/GPT) en OpenVMS Alpha.

Véase también

Literatura

  1. Andrew C. Goldstein, Desarrollo de software VAX/VMS (11 de enero de 1985). Archivos-11 Especificación de estructura en disco.
  2. Hewlett-Packard Development Company, LP (septiembre de 2003). "Apéndice A: Estructura del disco Files-11". Manual del administrador del sistema OpenVMS, Volumen 2: Ajuste, monitoreo y sistemas complejos.
  3. Kirby McCoy (1990). Internos del sistema de archivos VMS. Prensa Digital. ISBN 1-55558-056-4 .

Enlaces