Sistemas Operativos Tema 10. Sistema de archivos José Miguel Santos Alexis Quesada Francisco Santana Belén Esteban



Documentos relacionados
Sistemas Operativos Tema 4. Sistema de archivos

Unidad 3: Gestión de Archivos

Sistemas operativos. Tema 10: Sistemas de ficheros

Unidad 3: Gestión de Archivos

Gestión de archivos. Gestión de archivos

Gestión de archivos. Gestión de archivos. Gestión de archivos. Objetivo general

Sistemas Operativos. Curso 2016 Sistema de Archivos

SISTEMAS OPERATIVOS: SISTEMAS DE FICHEROS. Ficheros

CAPÍTULO IV: GESTIÓN DE ARCHIVOS. 1. Introducción a la Gestión de Archivos 2. Organización y acceso a los ficheros 3. Directorios

Sistemas de Archivos. Unidad 2 Almacenamiento y Estructuras de Archivos

La organización lógica y física de los sistemas de archivo y sus mecanismos de acceso de archivo.

Sistemas Operativos. Curso 2018 Sistema de Archivos II

Sistemas de Archivos Implementación. Módulo 11. Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur.

Sistemas Operativos Tema 9

Registros Un campo: Registro:

Tarea 5 Gestión de Archivos

SISTEMAS UNIDAD IV ADMINISTRACION DE ARCHIVOS ING. AGUILERA SERGIO OMAR

Sistema de Ficheros. Sistemas Operativos - ITIG. Álvaro Polo Valdenebro. Abril apoloval@gsyc.es. GSyC Introducción 1

GESTIÓN DE ARCHIVOS. Presentado por: Alba Arosemena Alma Vargas Hospicia Mendoza Roselvira Fernández Ahías Arosemena

Sistemas Operativos ING. EN COMPUTACIÓN Tercer Examen Parcial

Facilitar a los usuarios la posibilidad de estructurar los archivos de la manera más adecuada.

Sistema de Ficheros SOA

Unidad V: Sistemas de archivos 5.1 Concepto

*** SOLUCIÓN *** SISTEMAS OPERATIVOS (II-ITIS-ITIG) Examen Final 9 de junio de SEGUNDA PARTE -

Interfaz de Sistema de Archivos. Operating System Concepts 8th Edition

Unidad 9. Daniel Rojas UTN. Thursday, July 31, 14

Contenido. Sistema de archivos. Operaciones sobre archivos. Métodos de acceso a archivos. Directorio. Sistema de archivos por capas.

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 4. Técnicas de Dispersión. Definición y Manejo.

Sistema de Archivos. E. Campo M. Knoblauch Ó. López J. Clemente. Departamento de Automática Universidad de Alcalá

Tema III: Componentes de un Sistema Operativo

PREPARACION DE UN DISCO

Nombre del estudiante: Gustavo Antonio González Morales. Nombre del trabajo: Tarea 2. Investigación sobre Paginación y Segmentacion.

SISTEMAS OPERATIVOS SISTEMA DE ARCHIVOS

Tarea #6. Gestión de E/S y Planificación de Discos

Tabla de Símbolos. Programación II Margarita Álvarez

Indexación y Asociación

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 2. Estructura de un Fichero. Operaciones. Básicas.

Tabla de Símbolos. Programación II Margarita Álvarez

TEMA 3. Sistemas de Ficheros. Contenido

Tema 1: Implementación del sistema de archivos

Tema 3: Sistemas de Archivos

Administración de memoria.

Cuestionario almacenamiento en disco y gestión de memoria.

Sistemas de ficheros en Servidores de Información multimedia

dminstración de la Memoria y Sistema de Archivos Dr. Alonso Ramírez Manzanares 18-Nov-2009

Estructuras Dinámicas de datos.

Capítulo 2. Sistemas Operativos. Elementos, estructura y funciones generales.

GESTION DE LA MEMORIA

02/02/2012. El objetivo de este tema es dar unas nociones básicas del fichero electrónico.

Archivos Indice. Indexación y. Asociación. Conceptos Básicos Indices Ordenados Arboles. Asociación. Docente: Albert A.

Esta unidad describe cómo se almacena la información en los dispositivos magnéticos.

6 Sistemas de Archivos

DISEÑO FÍSICO DE UNA BASE DE DATOS EDWIN FERNANDO PACHECO FIGUEROA LICENCIATURA EN INFORMÁTICA UNIVERSIDAD DE NARIÑO

Sistemas de archivos

INSTITUTO POLITÉCNICO NACIONAL

SISTEMAS OPERATIVOS: SISTEMAS DE FICHEROS. Aspectos del diseño de un sistema de ficheros

TEMA 3. CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO. Definición y objetivos de un S.O

Tema 05: Tablas hash. M. en C. Edgardo Adrián Franco Martínez edgardoadrianfrancom

Organización de Computadoras

Tema 6 Organización y gestión de la memoria

Introducción a la Computación. Capitulo 4 Memoria Cache

Administración de sistemas gestores de bases de datos

Sistemas de archivos. Introducción Particiones. Proceso de arranque Sistemas de archivos. Administración

Administración de Memoria

Archivos. Teoría de Sistemas Operativos. Archivos. Archivos. Archivos. Archivos. Administración de Archivos

ADMINISTRACION DE LA MEMORIA. En memoria 1 solo proceso Desventajas:

Nombre del estudiante: Giovanna Kristhel Mendoza Castillo Gustavo Antonio González Morales Eduardo Solis Lara Francisco Javier Merodio Molina

1. Sistema Operativo Unix

Organización y acceso a los datos (continuación)

Jerarquía de Almacenamiento

Fundamentos de los Sistemas Operativos

Sistemas Operativos. Trabajo Práctico N ō 6

SISTEMAS OPERATIVOS: Lección 11: Ficheros

Introducción. Tema 10a. Introducción. Memoria RAM. Memoria RAM HDD

Sistemas Operativos II Convocatoria ordinaria 24 de Enero de 2001 Escuela Universitaria de Informática (Grupo K)

Estructuras de Datos y Algoritmos Tema 3: Arrays y listas enlazadas

TRABAJANDO CON ARCHIVOS Y DIRECTORIOS. Sistemas Operativos 3 Wandirys Lappost Díaz

Sistemas y Aplicaciones Informáticas. Tema 14. Utilización de Ficheros según su Organización.

Sistemas de Archivos Implementación. Módulo 11. Departamento de Informática Facultad de Ingeniería Universidad Nacional de la Patagonia San Juan Bosco

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 3. Estructuras de Almacenamiento. Básicas. Definición y Manejo.

Administración de la Memoria

Gestión de almacenamiento secundario

Diseño de compiladores. Organización de memoria. Organización de memoria. Organización de memoria. Zona de código 04/05/2014 ORGANIZACIÓN DE MEMORIA

BUSQUEDA SECUENCIAL Y DIRECTA, MARCELA MARQUEZ REBECA NAVARRO FONSECA GUADALUPE RUIZ ANGULO JONATHAN ALEXIS TOPETE ESTRUCTURA Y OPERACIONES

Capítulo 1. Sistemas de Asignación Contigua Basados en Particiones

Manejo, gestión, o administración de memoria. Capitulo 7 Stallings

Tema II. Unidad de memoria

Memoria. Organización de memorias estáticas.

Sistemas operativos (Parte 4)

Ficheros Contenido del Tema

SISTEMAS DE FICHEROS. Universidad San Pablo-CEU Escuela Politécnica Superior Rodrigo García Carmona

Árboles B y B ) 20. Algoritmos y Estructuras de Datos II I.T. en Informática de Gestión/Sistemas Universidad de Huelva 63

Compiladores: Ambientes para Ejecución. Pontificia Universidad Javeriana Cali Ingeniería de Sistemas y Computación Prof. María Constanza Pabón

INFORME MEMORIA CACHE Y MEMORIA VIRTUAL.

Organización y Acceso a Datos

MEMORIAS. Arquitectura de Computadoras. (Conceptos Introductorios) M. C. Felipe Santiago Espinosa

Universidad Tecnológica Nacional Facultad Regional Buenos Aires. Guía Práctica nº 5. File System

TEMA 2. ORGANIZACIONES DE FICHEROS Y ESTRUCTURAS DE ACCESO

Transcripción:

Sistemas Operativos Tema 10. Sistema de archivos 1998-2008 José Miguel Santos Alexis Quesada Francisco Santana Belén Esteban 1

Contenidos Interfaz del sistema de archivos Implementación del sistema de archivos 2

Interfaz del sistema de archivos Concepto de Fichero Métodos de acceso Directorios Protección 3

Necesidad de gestionar el almacenamiento no volátil SISTEMA DE COMPUTACIÓN necesitad de almacenar y recuperar información Característica fundamental del medio de almacenamiento: NO VOLATILIDAD Variedad de medios donde almacenar información: discos magnéticos, cintas magnéticas, discos ópticos, etc... Ventaja Permite elegir el medio más adecuado en función de las necesidades particulares: cantidad de información a almacenar, velocidad de acceso, fiabilidad, etc... Desventaja Requiere conocer las particularidades de cada medio 4

Concepto de archivo Solución: Sistema Operativo abstraiga las propiedades físicas de sus dispositivos de almacenamiento Cómo? Definiendo una unidad de almacenamiento lógica, el ARCHIVO Definiciones Un almacén persistente de información accesible mediante un nombre Es una abstracción cómoda del almacenamiento secundario (tipo abstracto de datos): Oculta la realidad física del almacenamiento (cintas, discos, etc...) Sirve para organizar la información como lo hacemos las personas 5

Concepto de archivo En general un archivo es una secuencia de bits cuyo significado el creador y usuario define SISTEMA DE ARCHIVOS: conjunto de módulos del SO que se encargan de la gestión de la información (archivos) 6

Atributos de archivo Aparte de su contenido, todo archivo tiene atributos que lo describen: Nombre (cadena de caracteres) Tipo de archivo (necesario en sistemas que reconocen distintos tipos) Ubicación en el dispositivo Tamaño Información de protección Fechas, horas e identificación del usuario 7

Directorios Qué estructura nos permite organizar y acceder a los archivos? Los atributos de los archivos deben guardarse en alguna estructura: DIRECTORIO O TABLA DE CONTENIDOS Los directorios al igual que los archivos deben ser no volátiles se almacenan en disco Deben traerse a memoria cuando se necesitan 8

Operaciones sobre archivos ARCHIVO: TAD = ATRIBUTOS + OPERACIONES OPERACIONES TIPICAS: Creación / Destrucción Lectura / Escritura Situarse dentro del archivo (por posición o por clave) Cambiar atributos 9

Operaciones sobre archivos La mayor parte de las operaciones implican buscar la entrada en el directorio asociada al archivo Mejora: operaciones para abrir y cerrar archivos Tabla de archivos abiertos Indice, puntero o descriptor de fichero Operación apertura de un fichero Entorno multiusuario? 10

Tipos y estructuras de archivos La información guardada puede ser de muchos tipos Técnica común para implementar los tipos de archivos es incluir el tipo como parte del nombre del archivo (extensión) Según el tipo de archivo estructura interna Debe el SO reconocer y manejar la estructura interna de diferentes tipos de archivos que pueden existir en un sistema? Todos los S.O. deben reconocer al menos una estructura : la de un ARCHIVO EJECUTABLE 11

Métodos de acceso Archivo: secuencia de registros lógicos de longitud fija De qué manera se accede a la información almacenada en los archivos? Algunos SO ofrecen un solo método de acceso mientras que otros ofrecen diferentes métodos de acceso ACCESO SECUENCIAL Se basa en un modelo de archivo de cinta ACCESO DIRECTO o RELATIVO Se basa en el modelo de archivo de disco ACCESO INDEXADO Requiere de estructuras adicionales: tablas de indices 12

Directorios Sistema de Archivos Miles de archivos Cómo los organizamos? Particiones/Minidiscos/Volúmenes Directorio de dispositivo, Tabla de Contenido del Volumen o simplemente Directorio 13

Operaciones sobre directorios Buscar un archivo por nombre Crear archivos Borrar Archivos Renombrar archivos Listar el directorio Recorrer el sistema de ficheros 14

Organización de directorios Único nivel (espacio plano) Dos niveles Arbóreo Grafo acíclico (enlaces) Grafo general (enlaces sin restricciones) 15

Directorio de nivel único Estructura de directorio más sencilla: todos los archivos se guardan en el mismo directorio Problemas: Conflictos de nombres (al aumentar el numero de ficheros) Mala organización en sistemas multiusuario El tiempo de búsqueda tiende a aumentar 16

Directorio de dos niveles Desventaja principal de la estructura de nivel único confusión de nombres entre diferentes usuarios Solución natural un directorio por usuario 17

Directorio de dos niveles Se resuelve el problema de conflictos de nombres (entre diferentes usuarios) Problema: compartir información (algunos sistemas impiden el acceso a los directorios de otros usuarios) Aparece el concepto de ruta (path) Archivos de sistema usuario especial 18

Directorio con estructura de árbol Directorio de dos niveles árbol de dos niveles Generalización árbol de altura arbitraria (subdirectorios) 19

Directorio con estructura de árbol Se reducen al mínimo los conflictos de nombres Directorio archivo que se trata de manera especial Los nombres de los archivos son rutas sobre el árbol de directorios: rutas absolutas o relativas Aparece el concepto de directorio de trabajo Política a seguir para la eliminación de directorios Caminos de búsqueda (facilita el hecho de que varios usuarios quieran compartir ficheros) 20

Directorios en grafo acíclico La estructura de árbol dificulta compartir archivos o directorios Se puede generalizar el esquema de directorio con estructura de árbol permitiendo a los directorios tener subdirectorios y archivos compartidos, sin ciclos 21

Directorios en grafo acíclico Cómo se puede implementar? Duplicar la información (complica la consistencia) Nueva entrada de directorio: ENLACE o LINK (es un puntero a otro archivo o directorio) Estructura de directorios de grafo acíclico es más flexible que un árbol sencillo pero más compleja Un mismo archivo podría tener diferentes nombres de camino absoluto -> Copias de seguridad dobles??? Eliminación Cuándo puede liberarse o reutilizarse el espacio asignado a un archivo compartido? 22

Directorios en grafo acíclico 23

Organización de directorios: resumen Directorio doble nivel Usuarios pueden crear subdirectorios Directorio estructura árbol Links Caso particular Directorio grafo acíclico Requieren el uso de algoritmos que detecten ciclos en grafos (problema: costoso en tiempo) Directorio estructura grafo general Problemas Evitar búsquedas repetidas Liberación de espacio al eliminar un archivo Recolector de basuras ( Garbage Colection ) Consume mucho tiempo y por ello pocas veces se intenta 24

Protección de archivos Necesidad de mantener la seguridad de la información: De daños físicos (integridad) Copias de seguridad Accesos indebidos (privacidad) Múltiples mecanismos según Tipo sistema Seguridad requerida 25

Protección Muchos sistemas definen privilegios de uso: cada usuario solo puede realizar ciertas operaciones sobre un archivo (acceso controlado) Tipo de operaciones Leer, Escribir, Ejecutar, Anexar, Eliminar, Listar Diferentes mecanismos de protección Listas y grupos de acceso Claves Técnicas criptográficas 26

Implementación del sistema de archivos Estructura del Sistema de Archivos Métodos de Asignación Administración del espacio libre Implementación de directorios 27

Estructura del sistema de archivos SISTEMA DE ARCHIVOS reside de manera permanente en almacenamiento secundario Con el objetivo de aumentar la eficiencia E/S las transferencias entre la memoria y el disco se efectúan en unidades de bloques (uno o más sectores) Discos dos características importantes que los convierten en un medio cómodo para almacenar muchos archivos Leer bloque/ Modificarlo y volverlo a escribir (rescribir) Se puede acceder directamente a cualquier bloque de información del disco 28

Organización del sistema de archivos Un sistema de archivos presenta dos problemas de diseño muy distintos: Definir que aspecto debe presentar el sistema de archivos a los usuarios (atributos, operaciones, estructura de directorios, etc...) Definir los algoritmos y estructuras de datos que permiten mapear el sistema de ficheros lógico sobre los equipos físicos 29

Métodos de asignación de espacio OBJETIVO: asignar espacio a ficheros de modo que el espacio en disco se aproveche de forma eficaz y se pueda acceder rápidamente a los archivos Asignación Contigua Asignación Enlazada Asignación Indexada 30

Asignación contigua Cada fichero ocupa un conjunto de bloques contiguos en el disco (optimiza movimiento de las cabezas del disco) Entrada de directorio para cada fichero Dirección del bloque inicial Longitud del área asignada al archivo (nº bloques) 31

Asignación contigua Permite manejar acceso tanto secuencial como directo Dificultades Encontrar espacio para la creación de un fichero Algoritmos mas utilizados Primer ajuste (First Fit) Mejor ajuste (Best Fit) Desde un punto de vista de aprovechamiento del espacio no existen diferencias pero el primero suele ser mas rápido Problema ambos algoritmos: Fragmentación Externa Solución: Compactación (pero es una solución costosa) 32

Asignación contigua Otro problema importante: Determinar cuanto espacio se necesita para un fichero En unas ocasiones es sencillo (cuando el archivo es copia de otro) Otras es muy complicado: Pecar por defecto? Pecar por exceso? Incluso cuando se conoce la cantidad total de espacio requerido, la preasignación puede ser ineficiente Crecimiento lento (fragmentación interna) 33

Asignación contigua con extensiones (extents) Para evitar estas desventajas algunos SO utilizan un esquema de asignación contigua modificado Inicialmente se asigna un trozo contiguo de espacio Cuando se requiere mas espacio, se añade otro trozo de espacio contiguo extensiones Ubicación de los bloques de un archivo: bloque inicial, nº bloques, enlace al primer bloque de la siguiente extensión Sigue existiendo fragmentación interna (si las extensiones son grandes) y externa (como consecuencia de la asignación y liberación de extensiones de diferentes tamaños) 34

Asignación enlazada Cada fichero es una lista enlazada de bloques de disco Entrada de directorio contiene: Puntero al primer y último bloque del archivo 35

Asignación enlazada: pros y contras Se solucionan los problemas de la asignación contigua No se produce fragmentación externa No es necesario declarar de antemano el tamaño del archivo Desventajas: Solo eficiente para archivos de acceso secuencial Espacio que ocupan los punteros (un archivo requerirá algo mas de espacio del que requeriría en otro caso) 36

Asignación enlazada por clusters Solución usual: Agrupar los bloques en grupos o clusters Esto permite: Correspondencia entre bloques lógicos y físicos siga siendo sencilla Mejora el rendimiento del disco (menos búsqueda de disco) Reduce el espacio necesario para la asignación de bloques y la administración de la lista de espacio libre Costo de esta estrategia: Aumento de la fragmentación interna: se desperdicia mas espacio cuando un cluster está parcialmente lleno que cuando lo esta un bloque 37

Asignación enlazada Confiabilidad ( Que sucedería si un puntero se perdiera o deteriorara?) Soluciones Listas doblemente enlazadas Almacenar el nombre del archivo y el numero de bloque relativo en cada bloque Problema: gasta extra de espacio 38

Asignación enlazada con FAT Variación del método de asignación enlazada FAT (Tabla de asignación de archivos, File Allocation Table) Se aparta una sección del disco al principio de cada partición para guardar en ella la tabla Empleado en MS-DOS y las tarjetas de memoria flash 39

Asignación Enlazada con FAT Si no está en caché puede dar lugar a un número significativo de movimientos de la cabeza del disco La cabeza debe moverse al principio de la partición para leer la FAT y encontrar el bloque en cuestión y luego moverse a la posición del bloque en sí. En el peor caso ocurrirán ambos movimientos para cada uno de los bloques Beneficio: mejora el tiempo de acceso aleatorio ya que se puede encontrar la posición de cualquier bloque leyendo la información en la FAT. 40

Asignación indexada La asignación enlazada resolvía los problemas de la asignación contigua fragmentación externa y declaración anticipada del tamaño de los archivos Problema: si no se usa FAT no se puede implementar un acceso directo EFICIENTE (punteros dispersos junto con los bloques) 41

Asignación indexada (2) SOLUCION: Reunir todos los punteros en el mismo lugar bloque de índices La i-ésima entrada del bloque índice apunta al i-ésimo bloque del archivo 42

Asignación indexada: pros y contras Soporta acceso directo sin sufrir fragmentación externa Desventaja: Desperdicia espacio (peor que en el caso de la asignación encadenada, p. Ej. Fichero que ocupe 1 o 2 bloques) Qué tamaño debería tener el bloque de índices? 43

Asignación indexada: tamaño del bloque de índices Cada archivo debe tener un bloque índice conviene que el bloque sea lo mas pequeño posible (normalmente ocupa un bloque de disco) Pero, si es demasiado pequeño no podrá tener suficientes punteros para un archivo grande. Soluciones: Esquema Enlazado Índice multinivel Esquema combinado (BSD UNIX) 44

Asignación Indexada: esquema multinivel de Unix 45

Administración del espacio libre Vector de bits Cada bloque se representa como un bit, que puede estar asignado (1) o libre(0) Lista enlazada El SO mantiene un apuntador al primer bloque libre. Este a su vez apuntará al siguiente bloque libre, etc Lista enlazada con información de bloques libres FAT El primer bloque libre se comporta como un bloque índice de bloques libres Variante: incluir nº bloques consecutivos 46

Implementación de directorios Lista lineal Lista lineal de nombres de archivos con punteros a los bloques de datos Sencillo de implementar (vector) pero costoso en tiempo Operaciones Creación, eliminación 47

Implementación de directorios Tabla de Dispersión (o Tabla Hash) Las entradas de directorio se guardan también en una lista lineal Nombre de archivo puntero a la entrada de ese archivo en la lista lineal Búsqueda, Creación y Eliminación: operaciones rápidas y fáciles de implementar 48

Implementación de directorios Problema: Colisiones Tamaño de la tabla es fijo La Función de Dispersión depende del tamaño de la tabla Agrandar tabla implica reubicación total Mejora: tratar las colisiones mediante listas enlazadas en cada entrada 49

Ficheros: sumario (1) Interfaz con el sistema de archivos Ficheros TAD Datos Atributos Operaciones Secuencial mejora: tabla de archivos abiertos Tipos de acceso Directo Indexado Directorios Particiones Operaciones Protección Organización Único nivel Dos niveles Árbol Grafo sin ciclos Grafo con ciclos 50

Ficheros: sumario (2) Implementación del sistema de archivos Métodos de asignación Contigua Enlazada Indexada Simple Con extensiones Simple Por clusters FAT Simple Enlazado Múltiples niveles Combinado Administración del espacio libre Implementación de directorios Vector de bits Lista enlazada de bloques libres Lista enlazada con info. de bloques libres FAT Tabla lineal Tabla de dispersión (hash) 51