Conceptos Clave en Sistemas de Ficheros: Estructura, Tamaño y Acceso Eficiente
Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones
Escrito el en español con un tamaño de 4,36 KB
Gestión de Ficheros y Directorios: Estructura, Tamaño y Operaciones
Este documento aborda conceptos fundamentales sobre la gestión de ficheros y directorios en sistemas operativos, incluyendo la representación de estructuras de árbol, el cálculo del tamaño máximo de un fichero y la descripción de operaciones clave.
1. Representación de la Estructura del Árbol de Ficheros/Directorios y Problemas de Recorrido
A continuación, se presenta la estructura de un árbol de ficheros y directorios:
/Madrid
(Fichero)/Lugo
(Fichero)/Murcia/Norte/Ciudad
(Enlace)/Murcia/Sur
(Directorio vacío)/Murcia/Centro
(Fichero)
Problema al Recorrer la Estructura
Al recorrer la estructura anterior en la búsqueda de un fichero, puede existir un problema de referencia circular a través del enlace:
/Murcia/Norte/Ciudad
que apunta a/Murcia
Soluciones Propuestas
En caso de una referencia circular, se podrían considerar dos posibles soluciones:
- No utilizar enlaces simbólicos en las búsquedas.
- Restringir el número de directorios a recorrer en las búsquedas.
2. Cálculo del Tamaño Máximo de un Fichero
Para determinar el tamaño máximo que puede tener un fichero, se consideran los siguientes elementos y sus capacidades de direccionamiento:
- Un puntero directo direcciona un bloque de 1 KB.
- Un puntero indirecto simple: Dado que el tamaño de bloque es 1 KB y el tamaño de dirección son 2 B, cada puntero indirecto simple direcciona un bloque que contiene 1 KB / 2 B = 512 punteros directos. Esto permite direccionar un total de 512 KB.
- Un puntero indirecto doble: Direcciona un bloque que contiene 1 KB / 2 B = 512 punteros indirectos simples, cada uno de los cuales direcciona 512 KB. Esto permite direccionar: 512 * 512 KB = 256 MB.
Por lo tanto, el tamaño máximo de fichero será la suma de las capacidades de direccionamiento de estos punteros:
1 KB (directo) + 512 KB (indirecto simple) + 256 MB (indirecto doble)
3. Descripción de Operaciones en el Sistema de Ficheros: Ejemplo rm
A continuación, se describe cómo se realiza la operación rm /Murcia/Norte/Ciudad
y los cambios que se efectuarían en el sistema de ficheros:
- Se accede al bloque 0 y se identifica el i-nodo raíz.
- Se accede al i-nodo 0 (bloque 1) y a su contenido (bloque 51).
- Se accede al i-nodo 3 (bloque 4) y a su contenido (bloque 53).
- Se accede al i-nodo 4 (bloque 5) y a su contenido (bloque 54).
- Se accede al i-nodo 5 (bloque 6) y se observa que el contador de enlaces es 1, por lo que el enlace puede ser borrado.
- Tanto el i-nodo 5 como el bloque 55 quedan libres.
El resultado es:
4. Cálculo del Tiempo de Acceso: Lectura del Primer Byte de /Madrid
El acceso al primer byte del fichero /Madrid
requiere las siguientes operaciones:
- Se accede al bloque 0 y se identifica el i-nodo raíz.
- Se accede al i-nodo 0 (bloque 1) y a su contenido (bloque 51).
- Se accede al i-nodo 1 (bloque 2) y a su contenido (bloque 100).
En total, se acceden a 5 bloques, lo que supone 10 sectores, que tardan 10 ms.
5. Cálculo del Tiempo de Acceso: Lectura del Último Byte de /Murcia/Centro
Para leer el último byte del fichero /Murcia/Centro
, se realizan las siguientes operaciones:
- Se accede al bloque 0 y se identifica el i-nodo raíz.
- Se accede al i-nodo 0 (bloque 1) y a su contenido (bloque 51).
- Se accede al i-nodo 3 (bloque 4) y a su contenido (bloque 53).
- Se accede al i-nodo 7 (bloque 8).
- El último byte del fichero está asociado al puntero indirecto doble. Por lo que es necesario acceder al bloque 57 y, a través de la última entrada del mismo, al bloque 58.
- La última entrada del bloque 58 apunta al último bloque de datos, que es el 133.
Así, es necesario acceder a 9 bloques de datos, lo que supone 18 sectores, con un tiempo asociado de 18 ms.