Fundamentos de Sistemas Operativos. Gestión de Archivos Almacenamiento de Información: Todas las aplicaciones necesitan almacenar y recuperar la información. Problemas con el almacenamiento en RAM: Capacidad insuficiente. Volatilidad (la información no debe desaparecer cuando el proceso muere o el equipo caiga) Acceso a la información concurrentemente por varios procesos. La información debe ser independiente a los procesos. Condiciones esenciales para el almacenamiento de la información a largo plazo: Debe ser posible almacenar una cantidad muy grande de información La información debe sobrevivir a la conclusión del proceso que la utiliza Debe ser posible que varios procesos tengan acceso concurrente a la información. Qué es un archivo? Es un objeto para almacenar información. Los procesos pueden leerlos o escribir sobre ellos. La información almacenada en ellos es persistente (no se ve afectada por la creación o terminación de un proceso) Un archivo debe desaparecer ante la eliminación explícita por parte de su propietario
Objetivo del sistema de archivos: Gestionar los datos que residen en almacenamiento secundario. Los datos se organizan en colecciones caracterizadas por un nombre y llamadas archivos. Posibles contenidos de un archivo: Un informe Un programa ejecutable Un grupo de órdenes para el SOP Imágenes de proceso Páginas en sistemas de memoria virtual El sistema de archivos debe ocultar al usuario todos los aspectos específicos de dispositivo necesarios para la manipulación de archivos y proprocionarles una abstracción simple y uniforme de archivos con nombre, ocultando el funcionamiento real de la unidad de almacenamiento física. Ejemplo: Copiar archivo1 prn Nombre de los archivos: Varían de un sistema a otro. En general todos admiten cadenas de unos 8 caracteres (incluyendo dígitos y símbolos) 2 urgente Fig.2-14 Algunos sistemas distinguen entre mayusculas y minúsculas (En Unix, son archivos distintos los siguientes: barbara, Barbara, BARBARA, BARbara y BarBaRa).
Muchos sistemas distinguen dos partes en el nombre separadas por un punto Nombre prog.c En MS-DOS la extensión está limitada a tres caracteres. En UNIX la extensión, como tal, no existe (prog.c.z indica que el fichero prog.c ha sido comprimido mediante el algoritmo Ziv-Lempel). Extensiones más comunes: file.bak Archivo de respaldo file.bas programa fuente en BASIC file.bin programa ejecutable en binario file.c programa fuente en C file.dat archivo de datos file.doc archivo de documentación file.ftn programa fuente en FORTRAN file.hlp texto para el comando HELP file.lib biblioteca de archivos.obj utilizados por el compilador en la tarea de enlace file.man página de un manual en línea file.obj archivo objeto (salida del compilador sin enlace) file.pas programa fuente en pascal file.tex archivo de entrada para el formato LATEX file.txt archivo general de texto Extensión de archivo
Estructura de un archivo Hormiga zorro cochino chivo león búho gato vaca perro Secuencia de bytes Secuencia de registros (CP/M128) Arbol: ordenación y búsqueda mediante key
Tipos de archivos: Regulares. Contienen información de usuario. Generalmente son ASCII o binarios Directorios. Son archivos de sistema para el mantenimiento de una estructura del sistema de archivos Especiales de caracteres. Se utilizan para modelar dispositivos series de E/S (terminales, impresoras, redes) Especiales de bloques. Se utilizan para modelar discos Número mágico Tamaño de texto Tamaño de datos Tamaño de BSS Tamaño:tabla símbolos Punto de entrada Banderas Encabezado Módulo Objeto Encabezado Módulo Objeto Nombre del módulo Fecha Propietario Protección Tamaño Texto Datos Bits de reasignación Tabla de símbolos a) archivo regular ejecutable b) archivo regular. Biblioteca 16 bits