You are on page 1of 20

5.

Sistemas de Archivos
5.5 Mecanismos de acceso a los archivos 5.6 Manejo de espacio en memoria secundaria 5.7 Manejo jerárquico 5.8 Mecanismos de recuperación en caso de falla

5.5 Mecanismos de acceso a los archivos.

Existen varios mecanismos para acceder a los archivos: directorios, descriptores de archivos, mecanismos de control de acceso y procedimientos para abrir y cerrar archivos.

Descriptor de archivos o bloque de control de archivos: Es un bloque de control que contiene información que el sistema necesita para administrar un archivo. Puede incluir la siguiente información: • Nombre simbólico del archivo. • Localización del archivo en el almacenamiento secundario. • Organización del archivo (método de organización y acceso). • Tipo de dispositivo. • Datos de control de acceso. • Tipo (archivo de datos, programa objeto, programa fuente, etc.). • Fecha y tiempo de creación. • Fecha de destrucción. • Fecha de la última modificación. • Suma de las actividades de acceso (número de lecturas).

• Los descriptores de archivos suelen mantenerse en el almacenamiento secundario; se pasan al almacenamiento primario al abrir el archivo.
• El descriptor de archivos es controlado por el sistema de archivos, por lo que el usuario no puede hacer referencia directa a él. • A cada uno de los archivos se le asigna un descriptor, el cual contendrá toda la información que necesitará el sistema de archivos para ejecutar con él los comandos que se le soliciten.

El descriptor se mantendrá en memoria principal desde que el archivo es abierto hasta que sea cerrado, y debe tener al menos la siguiente información: • Identificación del archivo: Consta de dos partes, el nombre que le da el usuario y un identificador interno que es asignado por el sistema operativo. • Lugar de almacenamiento • Tamaño del archivo • Información del modo de acceso: Se debe indicar quien puede accesar al archivo y con qué derechos.

Mecanismos de control de acceso:

• Control de un sistema de información especializado en detectar los intentos de acceso, permitiendo el paso de las entidades autorizadas, y denegando el paso a todas las demás. Involucra medios técnicos y procedimientos operativos.
• Mecanismo que en función de la identificación ya autenticada permite acceder a datos o recursos.

Directorios: • Los Directorios son utilizados por el sistema operativo para llevar un registro de los archivos que incluye el nombre, los atributos y las direcciones en disco donde se almacenan los datos del archivo referenciado.

Procedimientos de abrir y cerrar archivos: • Open (abrir): antes de utilizar un archivo, un proceso debe abrirlo. La finalidad es permitir que el sistema traslade los atributos y la lista de direcciones en disco a la memoria principal para un rápido acceso en llamadas posteriores. • Close (cerrar): cuando concluyen los accesos, los atributos y direcciones del disco ya no son necesarios, por lo que el archivo debe cerrarse y liberar la tabla de espacio interno.

5.6 Manejo de espacio en memoria secundaria.
A diferencia de la Memoria Principal la Memoria Secundaria no es tan veloz pero tiene gran capacidad para almacenar información en dispositivos tales como discos magnéticos, discos ópticos. Frecuentemente los datos y programas se graban en la Memoria Secundaria, de esta forma, cuando se ejecuta varias veces un programa o se utilicen repetidamente unos datos, no es necesario darlos de nuevo a través del dispositivo de entrada.

• En la Memoria Secundaria un archivo consta de un conjunto de bloques correspondiente a la cantidad de información que se transfiere físicamente en cada operación de acceso (lectura o escritura). • El Sistema Operativo o Sistema de Gestión de Archivos es el encargado de la asignación de bloques a archivos, de lo que surgen dos cuestiones, en primer lugar, debe asignarle el espacio de Memoria Secundaria a los archivos y, en segundo lugar, es necesario guardar constancia del espacio disponible para asignar. • El sistema de archivos se ocupa primordialmente de administrar el espacio de almacenamiento secundario, sobre todo el espacio en disco. El manejo del espacio libre en disco se lleva a cabo de la siguiente manera:

• Vector de bits. El espacio libre en disco es frecuentemente implementado como un mapa de bits, donde cada block es representado por un bit y si el block es libre el bit es cero de lo contrario está asignado.11000111 .

• Lista ligada. Una lista ligada de todos los blocks libres. Otra implantación se consigue guardando la dirección del primer block libre y el número de los blocks libres contiguos que le siguen. Cada entrada de la lista de espacio libre consiste de una dirección de disco y un contador (por conteo).

Por agrupación. Se almacena la dirección en n blocks libres en el primer block libre y el último contiene la dirección de otro block que contiene la dirección de otros blocks libres.

• Para manejar los espacios en disco existen los siguientes métodos: Contiguos. Esta asignación requiere que cada archivo ocupe un conjunto de direcciones contiguas en el disco, su asignación es definida por la dirección del primer block y la longitud del archivo. Asignación ligada o encadenada. Cada archivo es una lista ligada de blocks y el directorio contiene un apuntador al primer bloc y al último. Asignación Indexada. Cada archivo tiene su propio bloc de índice el cual es un arreglo de direcciones de bloc.

5.7 Modelo jerárquico.
• Directorios • El directorio contiene un conjunto de datos por cada archivo referenciado.

• Una posibilidad es que el directorio contenga por cada archivo referenciado: • • El nombre. • Sus atributos. • Las direcciones en disco donde se almacenan los datos. • Otra posibilidad es que cada entrada del directorio contenga: • El nombre del archivo. • Un apuntador a otra estructura de datos donde se encuentran los atributos y las direcciones en disco.

El número y organización de directorios varía de sistema en sistema: Directorio único: el sistema tiene un solo directorio con todos los archivos de todos los usuarios

Un directorio por usuario: el sistema habilita un solo directorio por cada usuario

Un árbol de directorios por usuario: el sistema permite que cada usuario tenga tantos directorios como necesite, respetando una jerarquía general.

5.8 Mecanismos de recuperación en caso de falla.
• Los archivos y directorios se mantienen tanto en memoria principal como en el disco, por lo que debemos asegurarnos de que un fallo del sistema no dé por resultado la perdida de datos o inconsistencia en los mismos.

Comprobación de coherencia: • Parte de la información de directorios se almacena en la memoria principal para acelerar el acceso. La información de directorios en la memoria principal está, más actualizada que la correspondiente información en el disco, porque la información de directorios almacenada en caché no se escribe necesariamente en el disco nada más por producirse la actualización.

Manejo de un bloque defectuoso • Se utilizan soluciones por hardware y por software.

• • • • • • •
• • • • • • •

La solución en hardware: Consiste en dedicar un sector del disco a la lista de bloques defectuosos. Al inicializar el controlador por primera vez: Lee la “lista de bloques defectuosos”. Elige un bloque (o pista) de reserva para reemplazar los defectuosos. Registra la asociación en la lista de bloques defectuosos. En lo sucesivo, las solicitudes del bloque defectuoso utilizarán el de repuesto.
La solución en software: Requiere que el usuario o el sistema de archivos construyan un archivo con todos los bloques defectuosos. Se los elimina de la “lista de bloques libres”. Se crea un “archivo de bloques defectuosos”: Está constituido por los bloques defectuosos. No debe ser leído ni escrito. No se debe intentar obtener copias de respaldo de este archivo.

• Respaldos (copias de seguridad o back-up): • Es muy importante respaldar los archivos con frecuencia. • Los discos magnéticos fallan en ocasiones y es necesario tener cuidado para garantizar que los datos perdidos debido a esos fallos no se pierdan para siempre. Con este fin, pueden utilizarse programas del sistema para realizar una copia de seguridad de los datos del disco en otro dispositivo de almacenamiento, como por ejemplo un disquete, una memoria USB, un CD/DVD o incluso otro disco duro. La recuperación de la pérdida de un archivo individual o de un disco completo puede ser entonces, simplemente, una cuestión de restaurar los datos a partir de la copia de seguridad.