El Advanced Disc Filing System ( ADFS ) es un sistema de archivos informático exclusivo de la gama de computadoras Acorn y los sucesores basados en RISC OS . Inicialmente basado en el raro Acorn Winchester Filing System, se renombró como Advanced Disc Filing System cuando se agregó soporte para disquetes (usando un controlador de disquete WD1770) y en los sistemas posteriores de 32 bits una variante de un controlador de disquete estilo PC . [2]
Desarrollador (es) | Hugo Tyson, Nick Reeves ( Acorn Computers ) |
---|---|
Nombre completo | Sistema de archivo de disco avanzado |
Introducido | 1983 Acorn MOS | con
Identificador de partición | Hugo o Nick (encabezado / pie de página del directorio) |
Estructuras | |
Contenidos del directorio | Tablas jerárquicas de longitud fija |
Asignación de archivos | Un rango por archivo más tabla de rangos de espacio libre (L), mapa de bits con ID de archivo incrustados (E) |
Bloques malos | ninguno (L), [1] marcado en mapa de bits (E) |
Limites | |
Max. tamaño del volumen | 512 MiB |
Max. tamaño del archivo | 512 MiB |
Max. Número de archivos | 47 por directorio (L), 77 por directorio (E) |
Max. longitud del nombre de archivo | 10 caracteres |
Caracteres permitidos en nombres de archivo | ASCII (Bellota MOS), ISO 8859-1 (RISC OS) |
Características | |
Fechas registradas | Modificación |
Rango de fechas | 1 de enero de 1900 - 3 de junio de 2248 |
Resolución de fecha | 10 ms |
tenedores | No |
Atributos | Cargar dirección, ejecutar dirección y número de ciclo de archivo (Acorn MOS); Tipo de archivo y hora de modificación (RISC OS); Usuario solo lectura / escritura / ejecución; solo lectura / escritura / ejecución pública; Bloqueo de eliminación |
Permisos del sistema de archivos | Ninguno |
Compresión transparente | No |
Cifrado transparente | No |
Deduplicación de datos | No |
Otro | |
Apoyados sistemas operativos | Bellota MOS , RISC OS |
El Disc Filing System original de Acorn estaba limitado a 31 archivos por superficie de disco, 7 caracteres por nombre de archivo y un solo carácter para los nombres de directorio, un formato heredado de los primeros ordenadores Atom y System 3-5 Eurocard . Para superar algunas de estas restricciones, Acorn desarrolló ADFS. El cambio más dramático fue la introducción de una estructura de directorios jerárquica. La longitud del nombre de archivo aumentó de 7 a 10 letras y el número de archivos en un directorio se expandió a 47. Conservó algunos atributos superficiales de DFS; el separador de directorios seguía siendo un punto y $
ahora indicaba la raíz jerárquica del sistema de archivos. ^
se utilizó para hacer referencia al directorio principal, @
el directorio actual y \
fue el directorio visitado anteriormente.
El BBC Master Compact contenía la versión 2.0 de ADFS, que proporcionaba la adición de comandos de formato, verificación y copia de seguridad en la ROM, pero omitía el soporte para discos duros. [3]
Uso de 8 bits
ADFS en sistemas de 8 bits requería un controlador de disquete WD1770 o posterior de la serie 1772, debido a la incapacidad del chip Intel 8271 original para hacer frente al formato de doble densidad requerido por ADFS. Sin embargo, ADFS podría usarse para admitir discos duros sin un controlador 1770 presente; En el desarrollo, el objetivo principal era el uso de discos duros, la extensión para manejar disquetes vino más tarde. [ cita requerida ] El controlador de disquete 1770 se incorporó directamente en el diseño de los modelos Master Series y B +, [4] y estaba disponible como una placa de actualización para el modelo B anterior. [5] [6] ADFS podría agregarse al modelo Sistemas B y B + con una actualización adicional. [7]
El Acorn Plus 3 , la expansión del disco oficial de la bellota por el electrón de la bellota, se suministran con AD FS como estándar, pero esta implementación presentaron varios errores notables. Un archivo llamado ZYSYSHELP fue "requerido por el sistema" y creado durante el formateo. [8] ( pág . 7 ) Esto fue una tontería. La implementación original de ADFS de Acorn en el Electron no era confiable al escribir en las primeras pistas de un disquete, así que esto fue una "solución" y simplemente implicó escribir un archivo lleno de basura en la parte sospechosa. Luego, el ADFS lo omitiría. [ cita requerida ] La corrupción del disco también podría ocurrir si se intenta utilizar el *COMPACTcomando sin deshabilitar el cursor de texto parpadeante. [9] [nota 1] Hugo Tyson, desarrollador principal de ADFS, recuerda que este error se encontró durante las pruebas tardías, pero no se corrigió en la versión inicial de la ROM para evitar cambios tardíos, ya que existen soluciones alternativas.
En Electron, el formateo del disco se realizó mediante el *EFORMcomando en lugar de los comandos establecidos *FORM40/ *FORM80DFS. Tenga en cuenta además que el *EFORMcomando difiere del *AFORMcomando equivalente para el 1770 ADFS en el microordenador BBC. Esto posiblemente se deba a la necesidad de crear el Archivo ZYSYSHELP en el Electron. El *EFORMcomando solo se proporcionó en el disco de bienvenida que se envió con el Plus3 y no se incluyó en la ROM. [8] ( págs . 48 )
ADFS apoyado discos duros, y 5¼" disquetes formateados hasta la capacidad de 640 KB utilizando densidad doble MFM que codifica ( L formato; discos de una sola cara se apoyaron con el S formato (160 KB) y M formato (320 KB)). ADFS como implementado en el sistema de microcomputadoras de la BBC (y más tarde en el sistema operativo RISC) nunca tuvo soporte para disquetes de densidad única.
El soporte de disco duro en ADFS usaba el mismo formato que los disquetes de formato L en términos de bloques de 256 bytes; [10] solo la disposición subyacente de pistas y sectores difería dependiendo de la unidad real utilizada, pero esto fue administrado por el controlador SCSI . Se conectó a una unidad Winchester basada en ST506 / ST412 a través del bus de 1 MHz de BBC Micro, una tarjeta de interfaz diseñada por Acorn (bus de 1 MHz a adaptador SCSI) y un controlador Adaptec SCSI listo para usar (adaptador SCSI a ST-506 ).
El soporte para unidades de estilo IDE / ATAPI ha sido agregado 'extraoficialmente' por terceros en los últimos años. [11]
El formato de archivo ADFS usó los bytes ascii Hugo para delimitar los nombres de directorio en el disco, el nombre del autor de ADFS Hugo Tyson.
Uso de 32 bits (Arthur y RISC OS)
En los sistemas de 32 bits, inicialmente se utilizó un WD 1770 o 1772 como controlador de disquete en las primeras máquinas de la gama. Los modelos posteriores utilizaron un controlador de E / S múltiple estilo PC que requería cambios leves en ADFS. Además del soporte heredado para el formato 'L'-type, Arthur y el sistema operativo RISC posterior proporcionaron formatos mejorados que superan las limitaciones de BBC Micro.
Arthur agregó el formato D con 77 entradas por directorio en comparación con las 47 anteriores, también utilizable en discos duros y un nuevo formato de disquete de doble densidad de 800 KB. Se agregó un atributo de "tipo" por archivo en el espacio que se usaba anteriormente para almacenar direcciones de carga y ejecución. Los 12 bits de información de tipo se utilizan para indicar el contenido o el uso previsto de un archivo, normalmente presentado como tres dígitos hexadecimales . Esto es similar a los atributos de tipo de 32 bits almacenados en el sistema de archivos HFS de Apple , y conceptualmente comparable al uso más general de tipos MIME por parte del sistema operativo Be (BeOS), o números mágicos en sistemas Unix (aunque este último se almacena como parte del archivo, no como metadatos).
RISC OS trajo el formato E y F para discos de doble densidad y discos de alta densidad / unidades de disco duro, respectivamente. Estos formatos admiten la fragmentación de archivos (con el llamado "nuevo mapa"), el almacenamiento de varios archivos por fragmento y el almacenamiento de archivos pequeños en tablas de directorio. La estrategia de asignación está optimizada para minimizar la fragmentación y, a veces, realiza la desfragmentación como parte de una operación de almacenamiento de archivos. [1] RISC OS 4 agregó el formato E + / F + que permitió nombres de archivo largos y más de 77 archivos por directorio. [ cita requerida ] Las versiones más recientes de RISC OS, incluidas las de Iyonix , continúan proporcionando ADFS y lo han extendido aún más para hacer frente a tamaños de disco duro más grandes.
A diferencia de la implementación de 8 bits, ADFS implementado en RISC OS no es monolítico. Un módulo de sistema llamado "ADFS" no proporciona más que el controlador de bloque y las interfaces de usuario, donde el módulo "FileCore" contiene la implementación real del sistema de archivos y FileSwitch contiene las implementaciones de API de acceso a archivos de alto nivel y VFS. Esto permite que otro hardware utilice el formato ADFS fácilmente, como IDEFS (comúnmente utilizado para tarjetas complementarias IDE), SCSIFS y AppFS compatible con la red. Las funciones de FileCore y FileSwitch son en cierto modo similares a los administradores de sistemas IFS e IO en Windows NT. Esta flexibilidad ha permitido que otros sistemas de archivo se implementen en RISC OS con relativa facilidad.
Soporte para ADFS en otras plataformas
El kernel de Linux tiene compatibilidad con ADFS para el formato E y versiones posteriores.
NetBSD tiene soporte filecore [12] en NetBSD 1.4 en adelante.
Herramientas como Omniflop (en Windows 2000 y posteriores) y el soporte de Libdsk permiten que el diseño "físico" de los disquetes ADFS se lea en sistemas de PC que utilizan una unidad interna. Sin embargo, la estructura lógica permanece sin implementar.
Referencias
- ↑ a b Reeves, Nick (26 de octubre de 1990). "Documento de diseño en formato E" . Consultado el 24 de mayo de 2013 .
- ^ Sistema de archivo de disco avanzado: Guía del usuario (PDF) . Acorn Computers Limited. Septiembre de 1985 . Consultado el 1 de agosto de 2016 .
- ^ "Quitar la tapa del Master Compact" . Usuario de bellota . Octubre de 1986. p. 17 . Consultado el 5 de septiembre de 2020 .
- ^ Smith, Bruce (julio de 1985). "Calificación B +" . Usuario de bellota . págs. 160-161 . Consultado el 18 de octubre de 2020 .
- ^ Interfaz de disco 1770 (PDF) . Acorn Computers Limited . Consultado el 6 de marzo de 2021 .
- ^ Instrucciones de instalación del kit de actualización de la interfaz de disco 1770 (PDF) . Acorn Computers Limited. Agosto de 1985 . Consultado el 11 de marzo de 2021 .
- ^ Actualización de ADFS (PDF) . Acorn Computers Limited . Consultado el 6 de marzo de 2021 .
- ^ a b La Guía del usuario de Electron Plus 3 (PDF) . Acorn Computers Limited. Octubre de 1984 . Consultado el 6 de marzo de 2021 .
- ^ Waddilove, Roland (agosto de 1988). "Mejorando la perfección" . Usuario de Electron . 5 (11). pag. 9 . Consultado el 20 de enero de 2021 .
- ^ "Estructura del sistema de archivos ADFS de 8 bits de Acorn" (TXT) . Mdfs.net . Consultado el 1 de agosto de 2016 .
- ^ "Interfaz BBC IDE - MDFS :: Info.Comp.BBC.IDE" . MDFS.net . Consultado el 1 de agosto de 2016 .
- ^ "Cambios y Novedades de NetBSD en 1998" . Netbsd.org . Consultado el 1 de agosto de 2016 .
- Watford Electronics, "El manual de referencia avanzado de la BBC Master Series", 1988 (p. 169)
- Acorn Computers Ltd, "The BBC Microcomputer System Master Series Reference Manual Part 1", Part No, 0443-001, Edición 1, marzo de 1986 - (Páginas (J.10-1 a J10-3)
Notas
- ^ Esto se debió al hecho de que el*COMPACTcomando usó memoria de pantalla (por defecto) como espacio de trabajo durante la operación, y el cursor intermitente implementado por software corrompió ese espacio de memoria. Una alternativa sería dar argumentos para que use memoria que no sea de pantalla para el espacio de trabajo, por ejemplo,*COMPACT 40 20en el modo de pantalla 6. En BBC Micro, el cursor parpadeante, si está habilitado, se superpuso a la salida de pantalla por el 6845 CRTC y el video de Acorn. ULA, sin cambiar ninguna memoria de pantalla. El Acorn Electron no tenía este hardware adicional y tuvo que alterar la memoria de la pantalla en el software para hacer parpadear el cursor.
enlaces externos
- Documentación de diseño en disco de ADFS