Evolucion Fs
sistemas de archivos
en Linux
Mario Medina C.
Depto. Ing. Eléctrica, UdeC
mariomedina@udec.cl
24-Oct.-2009
2009 Encuentro Linux
Tópicos a tratar
• Sistemas de archivos tradicionales
El sistema de archivos Ext2
• Sistemas de archivos basados en
bitácoras (journaling)
El sistema de archivos Ext3
• Sistema de archivos actuales
El sistema de archivos Ext4
Otros24-Oct.-2009
2009 Encuentro Linux
Sistemas de archivos
• Sistemas de archivos ven un medio de
almacenamiento masivo como un vector
de bloques
Bloques típicamente son de 1, 2 ó 4 KiB
Datos se almacenan en sectores de 512 bytes
Vector de bloques
0
24-Oct.-2009
2009 Encuentro Linux
n-1
Almacenando un archivo
• Almacenar los datos del archivo y Nodo índice
(Nodo-i)
los metadatos
Nodo índicecontiene índices de los
bloques de datos
Nombre se almacena en el directorio
Dueño
Tipo
Tamaño
1 11 13 14
17 18 20 5
6
0
1
2
3
4
5
6
7
8
9 10 11 12 13 14 15 16 17 18 19 20 21
Bloques de disco
24-Oct.-2009
7
2009 Encuentro Linux
Índice de
bloques
Breve historia
• Linus Torvalds
• MINIX
• Andy Tanenbaum
24-Oct.-2009
2009 Encuentro Linux
MINIX y Linux
• MINIX
Plataforma, guía yfuente de inspiración para
desarrollar Linux
• Linux
Primera versión del kernel en 1991
Inicialmente, utilizaba el sistema de archivos
de MINIX
Basado en Berkeley FFS
Simplificado para la enseñanza
24-Oct.-2009
2009 Encuentro Linux
MINIX FS
• Sistema de archivos de tamaño máximo
64 MiB
• Archivos de tamaño máximo 64 MiB
• Directorios tienen tamaño fijo
• Nombres de archivos limitados a14
caracteres
• Bloques de 1 KiB
• Punteros a bloques de 16 bits
24-Oct.-2009
2009 Encuentro Linux
Sistema de archivos Ext
• Sistema de archivos extendido (Extended
File System)
Liberado en 1992 para reemplazar MINIX FS
Sistema de archivos de tamaño máximo 4 TiB
Archivos de tamaño máximo 2 GiB
Nombres de archivos de 255 caracteres
Ineficiente!
Maneja bloques libres y nodos-I comolistas
encadenadas
24-Oct.-2009
2009 Encuentro Linux
Sistema de archivos Ext2
• Segundo sistema de archivos extendido
(Extended File System 2)
Aparece en 1993
Sistema de archivos de tamaño máximo 4 TiB
Archivos de tamaño máximo 2 GiB
Directorios de tamaño variable
Nombres de archivos de 255 caracteres
Eficiente y robusto
24-Oct.-2009
2009 Encuentro Linux
Sistema de archivos Ext2
•Divide el disco en n grupos de bloques
m bloques de datos
i nodos-i asociados a los archivos en el grupo
Grupo 0
Super
bloque
1
bloque
24-Oct.-2009
Descriptores
de grupos
n
bloques
Grupo 1
.....
Bitmap
Bitmap Tabla de
bloques
nodos-i nodos-i
datos
1
bloque
1
i
bloque bloques
2009 Encuentro Linux
Grupo n - 1
m Bloques de datos
m
bloques
Contenido de un grupo
•
•
•
•
•
•
m bloquesde datos
i nodos-i
Bitmap de bloques libres en el grupo
Bitmap de nodos-i libres en el grupo
Copia del superbloque
Copia de los descriptores de todos los
grupos
24-Oct.-2009
2009 Encuentro Linux
Superbloque
• Contiene información de todo el sistema
Número total de nodos-i
Tamaño total en bloques
Tamaño del bloque (1, 2 ó 4 KiB)
Tamaño del nodo-i (128 bytes)
Número total debloques libres
Número total de nodos-i libres
Número de bloques y nodos-i por grupo
Contador de operaciones de montaje
24-Oct.-2009
2009 Encuentro Linux
Descriptor de grupo
• Cada grupo tiene su propio descriptor
• Replicado en cada grupo (n copias)
Número de bloque del bitmap de bloques de
datos
Número de bloque del bitmap de nodos-i
Número de bloque del primer bloque de datos
Contador debloques de datos libres
Contador de nodos-i libres
Número de directorios en el grupo
24-Oct.-2009
2009 Encuentro Linux
Nodo-i
• 128 bytes de longitud
Tipo del archivo (archivo, directorio, socket,
enlace, etc.)
Tamaño del archivo en bytes
Tamano del archivo en bloques
Dueño del archivo
3 marcas de tiempo
Fecha y hora de creación
Fecha y hora de última modificación
Fecha y...
Regístrate para leer el documento completo.