Unidad IV Manejo de archivos M C Juan

  • Slides: 39
Download presentation
Unidad IV Manejo de archivos M. C. Juan Carlos Olivares Rojas

Unidad IV Manejo de archivos M. C. Juan Carlos Olivares Rojas

Temario 4. 1 Introducción 4. 2 Notación de archivo real y virtual 4. 3

Temario 4. 1 Introducción 4. 2 Notación de archivo real y virtual 4. 3 Componentes de un sistema de archivos 4. 4 Organización lógica y física 4. 5 Mecanismos de acceso a los archivos 4. 6 Manejo del espacio de memoria secundaria

Temario 4. 7 Modelo jerárquico 4. 8 Mecanismos de recuperación en caso de fallas

Temario 4. 7 Modelo jerárquico 4. 8 Mecanismos de recuperación en caso de fallas 4. 9 Estructura del sistema operativo 4. 9. 1 BIOS 4. 9. 2 Kernel o núcleo 4. 9. 3 Procesador de comandos 4. 10 Manejadores de interrupción 4. 10. 1 Interrupción del BIOS 4. 10. 2 Interrupción del MS-DOS 4. 10. 3 Interrupción del hardware

4. 1 Introducción • Un archivo es un conjunto de elementos de información relacionados

4. 1 Introducción • Un archivo es un conjunto de elementos de información relacionados entre si y que fueron definidos por su creador. • Por lo general, los archivos representan datos y programas. • Un archivo de datos puede ser texto (alfanumérico) o binario (secuencia de bytes).

Introducción • Los archivos pueden ser de formato libre, como los archivos de texto,

Introducción • Los archivos pueden ser de formato libre, como los archivos de texto, o pueden estar rigurosamente formateados (en general los archivos binarios). • En general, un archivo es una secuencia de bits, bytes, líneas o registros cuyo significado es definido por el creador del archivo y por el usuario.

Introducción • Un archivo se puede manipular como una unidad mediante operaciones tales como:

Introducción • Un archivo se puede manipular como una unidad mediante operaciones tales como: – Abrir (open()), – Cerrar (close()), – Crear (create()), – Destruir (destroy()), – Copiar (copy()), – Renombrar (rename()) y – Listar (list()).

Introducción • Los elementos de información individuales que conforman un archivo se pueden manipular

Introducción • Los elementos de información individuales que conforman un archivo se pueden manipular con acciones tales como leer (read()), escribir(write()), modificar(modify()) y eliminar(remove()). • De acuerdo a las características y tipo de trabajo que se realicen sobre los archivos, estos pueden caracterizarse por su: Volatilidad, Actividad y Tamaño.

Introducción • Volatilidad: se refiere a la frecuencia con la que se inserta o

Introducción • Volatilidad: se refiere a la frecuencia con la que se inserta o elimina información. • Actividad: se refiere al porcentaje de los elementos de información de un archivo al que se tuvo acceso en un periodo de tiempo dado. • Tamaño: se refiere a la cantidad de información que conforma el archivo.

Introducción • Archivo físico: es la información vista desde la perspectiva de hardware. •

Introducción • Archivo físico: es la información vista desde la perspectiva de hardware. • Por ejemplo, el archivo 1 está formado por los sectores 3, 10 y 15 del archivo. • Otro ejemplo: el archivo X es la secuencia de bytes localizados en la RAM en el bloque 0 A 703 h: 03000 h al 0 A 703 h: 04200 h.

Introducción • Archivo lógico: son datos cuyo significado esta definido por el usuario. •

Introducción • Archivo lógico: son datos cuyo significado esta definido por el usuario. • Ejemplo, el archivo Y es la información de 1000 artículos, cada uno con su código, descripción y precio. Generalmente, un archivo lógico se representa de manera tabular.

Introducción • El sistema de archivos (File System) de un sistema operativo, está conformado

Introducción • El sistema de archivos (File System) de un sistema operativo, está conformado por todas aquellas rutinas encargadas de administrar todos los aspectos relacionados con el manejo de Archivos. • En general, un Sistema de Archivos está compuesto por: Métodos de Acceso, Administración de Archivos, Administración de Almacenamiento Secundario, y Mecanismos de Integridad.

Introducción • Los Métodos de Acceso se ocupan de la manera en que se

Introducción • Los Métodos de Acceso se ocupan de la manera en que se tendrá acceso a la información almacenada en el archivo. Ejemplo: Secuencial, Directo, indexado, etc. • El Administración de Archivos se ocupa de ofrecer los mecanismos para almacenar, compartir y asegurar archivos, así como para hacer referencia a ellos.

Introducción • La Administración de Almacenamiento Secundario se ocupa de asignar espacio para los

Introducción • La Administración de Almacenamiento Secundario se ocupa de asignar espacio para los archivos en los dispositivos de almacenamiento secundario. • Los Mecanismos de Integridad se ocupan de garantizar que no se corrompa la información de un archivo, de tal manera que solo la información que deba estar en él, se encuentre ahí.

Introducción • La Organización de archivos se refiere a las diferentes maneras en las

Introducción • La Organización de archivos se refiere a las diferentes maneras en las que puede ser organizada la información de los archivos, así como las diferentes maneras en que ésta puede ser accedida. • Dado que hay 2 niveles de visión de los archivos (físico y lógico), se puede hablar también de 2 aspectos de organización de archivos: organización de archivos lógicos y de archivos físicos.

Introducción • La organización de archivos lógicos contempla la organización desde el punto de

Introducción • La organización de archivos lógicos contempla la organización desde el punto de vista lógico. Por ejemplo, secuencial, directo, etc. • La organización de archivos físicos contempla la administración de archivos desde la perspectiva física, particularmente la organización del almacenamiento en disco a nivel de pistas y sectores.

Introducción • Este tipo de organización muestra a su vez, dos aspectos importantes: Métodos

Introducción • Este tipo de organización muestra a su vez, dos aspectos importantes: Métodos de Asignación de Espacio Libre y Asignación De Espacio de Almacenamiento del Archivo. • Un método de asignación de espacio libre determina la manera en que un Sistema Operativo controla los lugares del disco que no están siendo ocupados.

Introducción • Para el control del espacio libre se puede utilizar como base alguno

Introducción • Para el control del espacio libre se puede utilizar como base alguno de los métodos teóricos: Vector de Bits, Lista Ligada, por Agrupacion y por Contador. • En un Vector de Bits, el número de bits que se tiene, representa cada sector del disco, es decir, que si los sectores 10 y 11 están ocupados su representación será:

Introducción • Lista Ligada: existe una cabecera en la que se tiene la dirección

Introducción • Lista Ligada: existe una cabecera en la que se tiene la dirección del primer sector vacío, ese sector a su vez, tiene un apuntador al siguiente bloque, y así sucesivamente hasta que se encuentre una marca indicando que ya no hay espacio libre. • Sistemas de archivos como FAT y EXT 2 funcionan con características de este esquema.

Introducción • Por agrupación: es similar a la lista ligada, solo que en este

Introducción • Por agrupación: es similar a la lista ligada, solo que en este se tiene por cada sector, un grupo de apuntadores a varios espacios vacios, al final de cada bloque se tiene un apuntador a otro grupo de apuntadores. • Por contador: aquí, por cada conjunto de bloques contiguos que estén vacios, se tiene por cada apuntador, un número de inicio y el tamaño del grupo de sectores vacios.

Introducción • Métodos de asignación de espacio en disco: un método de asignación de

Introducción • Métodos de asignación de espacio en disco: un método de asignación de espacio en disco determina la manera en que un Sistema Operativo controla los lugares del disco ocupados por cada archivo de datos. • Se debe controlar básicamente la identificación del archivo, sector de inicio y sector final.

Introducción • Para el control del espacio ocupado en disco se puede utilizar como

Introducción • Para el control del espacio ocupado en disco se puede utilizar como base alguno de los métodos teóricos: Asignación Contigua, Asignación Ligada, Asignación Indexada. • Asignación continua: este método consiste en asignar el espacio en disco de tal manera que las direcciones de todos los bloques correspondientes a un archivo definen un orden lineal.

Introducción • Las ventajas y desventajas que presenta este método de asignación son las

Introducción • Las ventajas y desventajas que presenta este método de asignación son las siguientes: • La cabeza de lectura no se mueve demasiado en la lectura de un archivo (ventaja) • Produce fragmentación externa.

Introducción • Asignación Ligada: en este método, cada archivo es una lista ligada de

Introducción • Asignación Ligada: en este método, cada archivo es una lista ligada de bloques de disco. • En el directorio hay un apuntador al bloque de inicio y un apuntador al bloque final para cada archivo. • En cada uno de los bloques donde se encuentra un archivo hay un apuntador al siguiente bloque de la lista.

Introducción • Las ventajas y desventajas que produce este método son las siguientes: –

Introducción • Las ventajas y desventajas que produce este método son las siguientes: – No produce fragmentación externa (ventaja). – La cabeza de lectura se puede mover demasiado en la lectura de un archivo (desventaja). – Si una liga se pierde, se perderá el archivo completo (desventaja). – Es ineficiente para la implementación de archivos directos (desventaja). – Se necesita un campo extra para el apuntador (desventaja).

Introducción • Asignación Indexada: resuelve el problema de la fragmentación externa poniendo todos los

Introducción • Asignación Indexada: resuelve el problema de la fragmentación externa poniendo todos los apuntadores en una sola localidad: El bloque índice. • Cada archivo tiene su bloque índice, El cual es un arreglo de direcciones de bloques de disco. • La i-ésima entrada en el bloque índice apunta al i-ésimo bloque conforma el archivo. En el directorio se controla la dirección del bloque índice de cada archivo.

Introducción • Las ventajas y desventajas que presenta este método son las siguientes: –

Introducción • Las ventajas y desventajas que presenta este método son las siguientes: – No produce fragmentación externa (ventaja). – Eficiente para la implementación de archivos directos (desventaja). – Existe desperdicio cuando hay archivos muy chicos (desventaja). – Desbordamiento de bloque índice (solución: creación de un esquema ligado; el ultimo bloque índice apunta a otro índice).

Introducción • Método FAT (MS-DOS): un aspecto importante de cualquier Sistema Operativo es la

Introducción • Método FAT (MS-DOS): un aspecto importante de cualquier Sistema Operativo es la manera de gestionar los archivos. • En el antiguo MS-DOS, la gestión de los archivos era casi todo lo que hacía el Sistema Operativo, esencialmente cuando se ejecutaba Windows de 16 bits sobre él. • Windows de 16 bits se ocupaba de todo a excepción de la manipulación de los discos fijos y flexibles, que los dejaba para MS-DOS.

Introducción • El objetivo de la FAT es el de asignar espacio en disco

Introducción • El objetivo de la FAT es el de asignar espacio en disco para archivos. • La tabla FAT contiene una entrada para cada grupo que está en el disco. Cada grupo es un conjunto de sectores. • Al querer crear un archivo o revisar uno existente, el sistema operativo revisa las entradas que están asociadas a la FAT de acuerdo con la ubicación del archivo.

Introducción • El área de sistema tiene 3 componentes: Registro de arranque, FAT y

Introducción • El área de sistema tiene 3 componentes: Registro de arranque, FAT y directorio. La tabla tiene una captación por bloque, ésta define cuantos bloques tiene el primer archivo. Esta ranura de la FAT contiene el número de bloque del siguiente bloque.

Introducción • Método VFAT: la VFAT emplea la misma técnica que la FAT, a

Introducción • Método VFAT: la VFAT emplea la misma técnica que la FAT, a diferencia de que la VFAT la implementa Windows '95 con direccionamiento a 32 bits. En sí éste módulo de 32 bits está escrito en código reentrante, lo que permite que múltiples hilos concurrentes ejecuten el código del sistema de archivos.

Introducción • Parte esencial de cualquier sistema corresponde con el almacenamiento de la información,

Introducción • Parte esencial de cualquier sistema corresponde con el almacenamiento de la información, esto se logra a través de un sistema de archivos. • Los archivos son las unidades lógicas para representar la información, y en un sistema distribuido los archivos pueden estar en prácticamente cualquier parte.

Archivos • Algunas características que comparten los sistemas de archivos son: • En general

Archivos • Algunas características que comparten los sistemas de archivos son: • En general son pequeños (<10 KB) • La lectura es más común que la escritura • La lectura y escritura son secuenciales, es raro el acceso aleatorio • La mayoría de los archivos tiene una vida corta.

Archivos • Es poco usual compartir archivos • Los procesos archivos promedio utilizan pocos

Archivos • Es poco usual compartir archivos • Los procesos archivos promedio utilizan pocos • Se recomienda el uso de cachés para evitar problemas de escritura simultánea.

4. 2. Duplicidad de datos • Se utiliza la duplicidad de los datos para

4. 2. Duplicidad de datos • Se utiliza la duplicidad de los datos para tener sistemas tolerantes a fallos, de más fácil acceso, entre otras ventajas. • El principal problema que presenta la duplicación de los datos tiene que ver con la transparencia de almacenamiento. • Otro problema importante consiste en la consistencia de la información.

Duplicidad de datos • Se manejan esquemas de actualización de réplicas primarias y secundarias,

Duplicidad de datos • Se manejan esquemas de actualización de réplicas primarias y secundarias, basado en quorum, entre otros mecanismo. • La duplicidad de los datos se puede hacer a nivel físico como los sistemas RAID. • Las cachés son un ejemplo de duplicidad de datos que traen grandes beneficios.

Referencias • Tanebaum, A. , Woodhull, A. (1997) Sistemas Operativos. Diseño e Implementación. México,

Referencias • Tanebaum, A. , Woodhull, A. (1997) Sistemas Operativos. Diseño e Implementación. México, Prentice Hall. ISBN: 970 -17 -0165 -8. • Tutorial de Sistemas Operativos 2. Instituto Tecnológico de la Paz. http: //sistemas. itlp. edu. mx/tutoriales/sistemas operativos 2/ [octubre 2007]

Referencias • Tanenbaum, Andrew (1996). Sistemas Operativos Distribuidos. México, Prentice Hall. • Shah, Steve

Referencias • Tanenbaum, Andrew (1996). Sistemas Operativos Distribuidos. México, Prentice Hall. • Shah, Steve (2001). Manual de administración de Linux. Capítulo 18: Sistema de archivos de red (NFS), pp 375386. España, Osborne Mc. Graw-Hill.

Referencias • Silberschatz, Abraham, Galvin, Peter, Sistemas Operativos, Quinta edición (1999). México, Pearson.

Referencias • Silberschatz, Abraham, Galvin, Peter, Sistemas Operativos, Quinta edición (1999). México, Pearson.

¿Preguntas?

¿Preguntas?