Linux nos permite acceder a varios sistemas a la vez de forma trasparente. Para ello implementa un sistema virtual de archivos que invoca a funciones especificas de los sistemas de los archivos reales cuando lo necesitan.
2. VIRTUAL FILE SYSTEM (VFS)
Linux nos permite acceder a varios sistemas a la vez
de forma transparente. Para ello implementa un
sistema virtual de archivos que invoca a funciones
especificas de los sistemas de los archivos reales
cuando lo necesita.
3. El VFS contiene código genérico que implementa la interfaz
de llamadas al sistema relacionadas con los sistemas de
archivos, mientras los File Systems reales contienen código
especifico de cada sistema de archivos soportado.
Los File System acceden a los dispositivos a través de la
caché de buffers, que es una capa de abstracción que aísla a
dichos File System de los detalles del HW.
4. En la interfaz de llamada al sistema, las operaciones con los archivos
y directorios se realizan mediante descriptores de archivo.
Estos descriptores son enteros que se utilizan como índices en la
tabla de descriptores de archivo que posee cada proceso.
Cada entrada de esta tabla posee información para acceder al nodo-i
asociado al archivo deseado.
5. EL VFS mantiene un tabla de nodos-i virtuales
(un especie de caché) en donde se coloca la
información de los nodos-i reales de los
distintos archivos abiertos.
En una llamada al sistema, el núcleo debe de
poder acceder a un archivo a partir de un
descriptor.
6. Cada nodo-i posee la siguiente información:
• El propietario y el grupo propietario del archivo.
• Tipo de archivo (regular, directorio, ...)
• Los permisos en el archivo.
• Fecha y hora de creación, última lectura y el cambio.
• Fecha y hora de esta información se ha cambiado en el nodo-i.
• Número de enlaces a este archivo.
• Tamaño de archivo.
• Una dirección que define la ubicación real de los datos del
archivo.
7. Linux puede usar varios dispositivos de
almacenamiento a la vez. Para utilizar un
dispositivo lo habitual es crear en el un
File System.
Algunos dispositivos de almacenamiento
se pueden dividir en “dispositivos
lógicos” más pequeños. Un disco duro
puede dividirse en particiones.
8. Sistema de ficheros
M
B
R
Sistema de ficheros Sistema de ficheros
Disco duro
Partición ParticiónPartición
Bloque de arranque
La información sobre particiones se guarda en la
tabla de particiones del primer sector del disco
duro, conocido como MBR (Master Boot Record).
9. Hay dos tipos principales de particiones en un sistema
Linux:
• Partición de datos : datos normales del sistema
Linux, incluyendo la partición raíz que contiene
todos los datos para poner en marcha y ejecutar el
sistema.
• Partición de intercambio : la expansión de la
memoria física del ordenador, memoria adicional en
el disco duro.
10. MONTAJE DE SISTEMAS DE ARCHIVOS
El MBR suele contener también el código inicial de arranque del
ordenador.
Aunque Linux puede usar varios dispositivos de almacenamiento
a la vez, solo existe una <<única jerarquía de directorios>> o
sistema lógico de archivos.
Para usar un dispositivo Linux tiene que insertar sus sistema de
archivos en su sistema lógico de archivos. Dicha operación se
llama “montaje”.
11. Un S.F. se monta sobre un montaje, un directorio bajo en el cual se
hace visible el S.F. montado, pasando a formar parte de la jerarquía
única de directorios.
Cuando ya no se requiere utilizar un dispositivo de almacenamiento
se “desmonta”, haciendo que su sistema de archivos deje de ser
accesible.
El S.F. que se monta durante el arranque del S.O. y sobre el que se
montan todos los demás sistemas de archivos se conoce como
sistema de archivos raíz.
13. EXT2
Es el sistema de archivos por defecto. Sus principales características
son:
• Nombres largos(hasta 255 caracteres).
• Archivos grandes(más de 4 T Bytes).
• Direcciones de bloqueo lógico de 4 bytes.
• Buen rendimiento.
14. El Ext2 divide el dispositivo de almacenamiento en grupos de
bloques. Cada grupo contiene:
• Una copia de súper bloque.
• Una copia de los descriptores de grupos.
• Un bloque para el mapa de bits de bloques.
• Un bloque para el mapa de nodos-i.
• Varios bloques para nodos-i.
• Bloques de datos para completar el grupo.
15.
16. El súper bloque contiene información sobre la estructura general del
sistema de archivos:
• Tamaño del bloque lógico(logaritmo base 2).
• Total de nodos-i y números de nodos-i libres.
• Total de bloque de datos y numero de bloques libres.
• Tamaño de bloques (en bloques).
• Nodos-i por grupos.