El sistema de archivos Minix es el sistema de archivos nativo del sistema operativo Minix . Fue escrito por Andrew S. Tanenbaum en la década de 1980 con el objetivo de replicar la estructura del sistema de archivos Unix, omitiendo las características complejas, y fue concebido como una herramienta didáctica. En 1994, cayó en desuso entre los usuarios de Linux debido a la popularidad de otros sistemas de archivos, especialmente ext2 , y a la falta de ciertas características, como el tamaño limitado de las particiones y la restricción en la longitud de los nombres de archivo.
Historia
MINIX fue escrito por Andrew S. Tanenbaum en la década de 1980 como un sistema operativo similar a Unix cuyo código fuente podía utilizarse libremente en la educación. El sistema de archivos de MINIX fue diseñado para su uso con MINIX; copia la estructura básica del sistema de archivos de Unix, pero evita cualquier característica compleja con el fin de mantener el código fuente limpio, claro y simple, para cumplir con el objetivo general de MINIX de ser una herramienta didáctica útil. [ 1 ]
Cuando Linus Torvalds comenzó a escribir el núcleo de su sistema operativo Linux (1991), trabajaba en una máquina con MINIX y adoptó su sistema de archivos. Esto pronto resultó problemático, ya que MINIX restringía la longitud de los nombres de archivo a 14 caracteres (30 en versiones posteriores), limitaba las particiones a 64 megabytes [ 2 ] y el sistema de archivos estaba diseñado para fines didácticos, no para el rendimiento [ 3 ] . La implementación de Linux del sistema de archivos MINIX era multihilo, mientras que la implementación de MINIX era monohilo [ 4 ] . El sistema de archivos extendido (ext; abril de 1992) se desarrolló para reemplazar el de MINIX, pero solo con la segunda versión de este, ext2 , Linux obtuvo un sistema de archivos de calidad comercial [ 3 ] . En 1994, el sistema de archivos MINIX era prácticamente inexistente entre los usuarios de Linux [ 2 ] .
Diseño e implementación
Un sistema de archivos MINIX tiene seis componentes: [ 1 ]
- El bloque de arranque , que siempre se almacena en el primer bloque, contiene el gestor de arranque que carga y ejecuta un sistema operativo al iniciar el sistema.
- El segundo bloque es el Superbloque , que almacena datos sobre el sistema de archivos, lo que permite al sistema operativo localizar y comprender otras estructuras del sistema de archivos; por ejemplo, el número de inodos y zonas , el tamaño de los dos mapas de bits y el bloque inicial del área de datos .
- El mapa de bits de inodos es un mapa simple de los inodos que registra cuáles están en uso y cuáles están libres, representándolos como un uno (en uso) o un cero (libre).
- El mapa de bits de zona funciona de la misma manera que el mapa de bits de inodos , excepto que realiza un seguimiento de las zonas.
- El área de inodos . Cada archivo o directorio se representa como un inodo, que registra metadatos como el tipo (archivo, directorio, bloque, carácter, tubería), identificadores de usuario y grupo, y tres marcas de tiempo que registran la fecha y hora del último acceso, la última modificación y el último cambio de estado. Un inodo también contiene una lista de direcciones que apuntan a las zonas del área de datos donde se almacenan los datos del archivo o directorio.
- El área de datos es el componente más grande del sistema de archivos, ya que ocupa la mayor parte del espacio. Es donde se almacenan los datos de los archivos y directorios.
Véase también
Referencias
- 1 2 Tanenbaum, Andrew S; Albert S. Woodhull (14 de enero de 2006). Sistemas operativos: diseño e implementación (3.ª ed.). Prentice Hall . ISBN 0-13-142938-8.
- 1 2 Strobel, Stefan; Uhl, Thomas (1994). Linux—Liberando la estación de trabajo en su PC . Springer-Verlag. pág. 54.
- ^ Mauerer , Wolfgang (2010). Arquitectura profesional del kernel de Linux . John Wiley e hijos. ISBN 9781118079911.
- ↑ "Lanzamiento de Linux 0.01 - refs/tags/v0.01 - pub/scm/linux/kernel/git/nico/archive - Git en Google" . kernel.googlesource.com . Consultado el 29 de marzo de 2024 .
Enlaces externos
- Límites de tamaño de archivos, sistema de archivos y memoria en Minix
- Herramienta de sistema de archivos Minix
- Introducción al sistema de archivos minix
- Software de 1987
- Tecnología del sistema de archivos Unix
- Sistemas de archivos de disco
- Sistemas de archivos compatibles con el kernel de Linux
- Minix