Estructura de archivos

 Estructura de archivos


La razón principal del uso de sistemas de archivos son, naturalmente, los archivos. En estos se almacena información de algún tipo, con o sin una estructura predeterminada.

El acceso a los archivos puede realizarse de diferentes maneras:

Acceso secuencial

Mantiene la semántica por medio de la cual permite leer de los archivos, de forma equivalente




Acceso aleatorio

El empleo de gestores como SQLite u otros muchos motores de base de datos más robustos no exime al usuario de pensar en el archivo como una tabla estructurada.

Acceso relativo a índice


En los últimos años se han popularizado los gestores de base de datos débilmente estructurados u orientados a documentos, llamados genéricamente NoSQL. Estos gestores pueden guardar registros de tamaño variable en disco, por lo que, no pueden encontrar la ubicación correcta por medio de los mecanismos de acceso aleatorio.

Directorios

Los primeros sistemas de archivos limitaban el concepto de directorio a una representación plana de los archivos que lo conformaban, sin ningún concepto de jerarquía de directorios como el que hoy resulta natural a los usuarios.


Directorios de profundidad fija





Este esquema resuelve el problema principal del nombre global único: antes de los directorios, cada usuario tenía que cuidar que los nombres de sus archivos fueran únicos en el sistema, y ya teniendo cada uno su propio espacio, se volvió una tarea mucho más simple.




Directorios estructurados en árbol





El siguiente paso natural para este esquema es permitir una jerarquía ilimitada: en vez de exigir que haya una capa de directorios, se le puede dar la vuelta al argumento, y permitir que cada directorio pueda contener a otros archivos o directorios anidados arbitrariamente. Esto permite que cada usuario (y que el administrador del sistema) estructure su información siguiendo criterios lógicos y piense en el espacio de almacenamiento como un espacio a largo plazo.


El directorio como un grafo dirigido


En un grafo dirigido un mismo nodo puede tener varios directorios padre, permitiendo, por ejemplo, que un directorio de trabajo común sea parte del directorio personal de dos usuarios. Esto es, el mismo objeto está presente en más de un punto del árbol.



Liga o enlace simbólico

Es un archivo especial, que meramente indica a dónde apunta. El encargado de seguir este archivo a su destino (esto es, de resolver la liga simbólica) es el sistema operativo mismo; un proceso no tiene
que hacer nada especial para seguir la liga.

Una liga simbólica puede apuntar a directorios, incluso creando ciclos, o a archivos en otros volúmenes.

Cuando se crea una liga simbólica, la liga y el archivo son dos entidades distintas. Si bien cualquier proceso que abra al archivo destino estará trabajando con la misma entidad, en caso de que éste sea renombrado o eliminado, la liga quedará rota (esto es, apuntará a una ubicación inexistente).



Comentarios

Entradas populares de este blog

Práctica sobre funciones

Diagramas para la documentación de las vistas propuestas en el modelo 4+1