Sistema de Archivos Almacenaje Secundario Módulo 12 Departamento de Informática Facultad de Ingeniería Universidad Nacional de la Patagonia “San Juan Bosco” Modulo 12: Almacenaje secundario Revisión Estructura de Disco Discos Adjuntos Planificación de Disco Administración de Disco Administración del Espacio de Swap Estructura de RAID Implementación de Almacenaje Estable Dispositivos de Almacenaje Terciario Aspectos de Sistemas Operativos Rendimiento y Costos JRA © 2010 Sistemas Operativos – Almacenaje Secundario Objetivos Describe la estructura física de los dispositivos de almacenaje secundario y terciario y el resultado de su uso Explica las características del redimiento de los dispositivos de almacenaje masivos. Discute los servicios del SO provistos por el almacenaje masivo, incluyendo RAID y HSM JRA © 2010 Sistemas Operativos – Almacenaje Secundario Estructura de Disco Los dispositivos de disco son vistos como un arreglo unidimensional de bloques lógicos, donde el bloque lógico es la mas pequeña unidad de transferencia. Ese arreglo de bloques lógicos es mapeado secuencialmente en sectores del disco. El sector 0 es el primer sector de la primera pista sobre el cilindro más externo. El mapeo procede en orden a través de esa pista, luego el resto de las pistas en el cilindro, y luego el resto de los cilindros desde el más externo hasta el más interno. JRA © 2010 Sistemas Operativos – Almacenaje Secundario Revisión Los discos magnéticos son el núcleo del almacenaje secundario de las computadoras modernas Los discos rotan 60 a 200 veces por segundo El ritmo de transferencia es el ritmo con que los datos fluyen entre el dispositivo y la computadora. Tiempo de posicionamiento (tiempo de acceso al azar) es el tiempo que lleva mover el brazo del disco hasta el cilindro deseado (tiempo de búsqueda ) y el tiempo que demora el sector deseado en pasar por debajo de las cabezas del disco (latencia rotacional) Un aterrizaje de cabeza tiene lugar cuando las cabezas del disco hacen contacto con la superficie del disco. Esto es malo Sistemas Operativos – Almacenaje Secundario JRA © 2010 Revisión Los discos pueden ser removibles Los discos son asociados a la computadora vía canal de E/S JRA © 2010 Los canales varían incluyendo EIDE, ATA, SATA, USB, Fiber Channel (FC), SCSI El controlador huésped en la computadora usa el canal para comunicarse con el controlador del disco embebido en el mismo disco o en el arreglo de almacenaje.. Sistemas Operativos – Almacenaje Secundario Mecanismo de la Cabeza del Disco JRA © 2010 Sistemas Operativos – Almacenaje Secundario Almacenaje Adjunto en Red El almacenaje adjunto en red (NAS: Network-Attached Storage ) es un almacenaje disponible sobre la red más que sobre una conexión local (como un canal) NFS y CIFS son protocolos comunes Implementados via llamadas a procedimientos remotos (RPCs) entre el huésped y el almacenaje Un nuevo protocolo iSCSI usa IP para transportar el protocolo SCSI JRA © 2010 Sistemas Operativos – Almacenaje Secundario Almacenamiento en Area de Red (SAN) Común en ambientes grandes de almacenamiento Múltiples huéspedes adjuntos a múltiples arreglos de almacenamiento JRA © 2010 Sistemas Operativos – Almacenaje Secundario Planificación de Disco El sistema operativo es responsable de usar el hardware eficientemente — para los dispositivos de disco esto significa menor tiempo de acceso y mayor ancho de banda del disco. El tiempo de acceso tiene dos componentes importantes Tiempo de búsqueda: es el tiempo que lleva mover las cabezas al cilindro que contiene el sector deseado. Latencia rotacional es el tiempo adicional de espera por la rotación del disco hasta que el sector deseado está bajo las cabezas lectoras-escritoras. Minimizar el tiempo de búsqueda. Tiempo de búsqueda ≈ distancia a la búsqueda El ancho de banda del disco es el número total de bytes transferi-dos, dividido por el total de tiempo entre el primer requerimiento de servicio y la terminación de la última transferencia. JRA © 2010 Sistemas Operativos – Almacenaje Secundario Planificación de Disco (Cont.) Existen varios algoritmos para planificar el servicio de los requerimientos de E/S. Se ilustran los mismos con una cola de requerimientos (0-199). 98, 183, 37, 122, 14, 124, 65, 67 La cabeza ha resuelto el requerimiento al sector 53 Sistemas Operativos – Almacenaje Secundario JRA © 2010 Primero en Entrar- Primero en Salir FCFS Fácil de implementar Equitativo ¿Excesivas búsquedas ? 14 37 53 65 67 98 Cola = 98, 183, 37, 122, 14, 124,65, 67 122124 183 Pistas: 45 130 640 638 579 469 361 276 JRA © 2010 Sistemas Operativos – Almacenaje Secundario El Tiempo de Búsqueda mas Corto Primero SSTF Selecciona el requerimiento con el mínimo tiempo de búsqueda desde la posicón que que ocupa la cabeza en ese momento. La planificación SSTF es una forma de planificación SJF; puede causar inanición de algunos requerimientos. Se muestra el mismo ejemplo anterior realizado con el algoritmo SSTF. Sistemas Operativos – Almacenaje Secundario JRA © 2010 SSTF Minimiza tiempo de búsqueda El tiempo medio depende de la carga El tiempo de servicio es < cuando la cola es mas larga! Puede llevar a esperas largas - inequitativo Cola = 98, 183, 37, 122, 14, 124,65, 67 14 37 53 65 67 98 122124 183 FCFS: 640 Pistas: 12 236 177 175 151 67 44 14 JRA © 2010 Sistemas Operativos – Almacenaje Secundario SCAN El brazo del disco comienza en un extremo del disco y se mueva hacia el otro extremo, en su recorrido sirve todos los requerimientos hasta que llega al otro extremo donde se invierte el movimiento de la cabeza y continua sirviendo los requerimientos. Se lo llama, también algoritmo del ascensor. Se muestra el mismo ejemplo anterior implementando este algoritmo. Sistemas Operativos – Almacenaje Secundario JRA © 2010 SCAN (Cont.) Cola = 98, 183, 37, 122, 14, 124,65, 67 14 37 53 65 67 98 122124 183 FCFS: 640 SSTF: 236 Pistas: 177 118 39 16 236 151 120 175 JRA © 2010 Sistemas Operativos – Almacenaje Secundario LOOK Versión de SCAN El brazo va tan lejos en cada dirección como el último requerimiento. Cola = 98, 183, 37, 122, 14, 124,65, 67 14 37 53 65 67 98 122124 183 FCFS: 640 SSTF: 236 Pistas: 16 208 149 147 123 92 90 39 JRA © 2010 Sistemas Operativos – Almacenaje Secundario C-SCAN (Circular SCAN) Provee un tiempo de espera mas uniforme que el SCAN. La cabeza se mueve de un extremo a otro del disco sirviendo los requerimientos en el camino. Cuando alcanza el otro extremo inmediatamente retorna al comienzo del disco sin servir ningún requerimiento en ese viaje de retorno. Trata los cilindros como una lista circular que salta desde el último cilindro al primero o viceversa, según sea la convención. JRA © 2010 Sistemas Operativos – Almacenaje Secundario C-SCAN FCFS: 640 Cola = 98, 183, 37, 122, 14, 124,65, 67 SSTF: 236 Pistas: 160 183 69 45 14 12 130 71 14 JRA © 2010 37 53 65 67 98 122124 183 Sistemas Operativos – Almacenaje Secundario C-LOOK Versión del C-SCAN El brazo solo va tan lejos como el último requerimiento en cada dirección, luego invierte la dirección inmediatamente, sin retornar al extremo del disco sino hasta el último requerimiento en esa dirección. JRA © 2010 Sistemas Operativos – Almacenaje Secundario C-LOOK (Cont.) FCFS: 640 Cola = 98, 183, 37, 122, 14, 124,65, 67 SSTF: 236 Pistas: 130 69 45 153 14 12 71 14 JRA © 2010 37 53 65 67 98 122124 183 Sistemas Operativos – Almacenaje Secundario Selección de un Algoritmo de Planificación de Disco SSTF es común y tiene una atracción natural. SCAN y C-SCAN se desempeñan mejor para sistemas que tienen carga pesada sobre el disco. El desempeño depende del número y tipos de requerimientos. El servicio de los requerimientos al disco pueden ser influenciado por el método de alocación de archivos. El algoritmo de planificación de disco debe ser escrito como un módulo separado del sistema operativo, permitiéndose ser reemplazado por otros algoritmo si es necesario. Tanto SSTF o LOOK es una elección razonable como algoritmo por defecto. JRA © 2010 Sistemas Operativos – Almacenaje Secundario Administración de Disco Formato en bajo nivel, o formato físico — Divide un disco en sectores que el controlador de disco puede leer y escribir. El uso de un disco es para contener archivos, el sistema operativo necesita registrar sus propias estructuras de datos en el disco. Partición de un disco en uno o varios grupos de cilindros. Formato lógico o “hacer un sistema de archivos” . Boot block inicializa el sistema. El bootstrap está almacenado en ROM. Programa cargador bootstrap . Métodos para administrar los bloques malos. JRA © 2010 Sistemas Operativos – Almacenaje Secundario Disco MS-DOS JRA © 2010 Sistemas Operativos – Almacenaje Secundario Boot desde un Disco en Windows 2000 JRA © 2010 Sistemas Operativos – Almacenaje Secundario Manejo de Espacio de Swapping Espacio de Swap — la memoria virtual usa el espacio de disco como una extensión de la memoria principal. El espacio de swap puede ser extraído del sistema de archivos normal , es más, comunmente, puede estar en una partición separada de disco. Manejo del espacio de Swap 4.3BSD aloca el espacio de swap cuando el proceso comienza; reserva el segmento de texto (el programa) y el segmento de datos. EL kernel usa mapas de swap para controlar el uso del espacio de swap. Solaris 2 aloca el espacio de swap solo cuando la página es forzada fuera de la memoria física, no cuando la página de memoria virtual es creada. JRA © 2010 Sistemas Operativos – Almacenaje Secundario Estructura RAID RAID – múltiples discos proveen confiabilidad via redundancia. RAID es establecido en seis niveles diferentes. JRA © 2010 Sistemas Operativos – Almacenaje Secundario RAID (cont) Varias mejoras en las técnicas de uso del disco involucran el uso de varios discos trabajando cooperativamente. La división de discos (striping) usa un grupo de discos como una unidad de almacenaje. Los esquemas RAID mejoran la confiabilidad y el rendimiento almacenando datos redundantes. Espejado o sombra mantiene duplicados de cada disco. Paridad en bloques entrelazados usa mucha menos redundancia. JRA © 2010 Sistemas Operativos – Almacenaje Secundario Niveles RAID JRA © 2010 Sistemas Operativos – Almacenaje Secundario Implementación de Almacenaje Estable Los esquemas de bitácora de escritura adelantada requiere almacenaje estable. Para implementar el almacenaje estable: Replicar información sobre más de un medio de almacenaje no volátil con modo de fallas independientes. Actualizar información de manera controlada para asegurar que se puede recuperar el dato estable luego de una falla durante la transferencia o recuperación. JRA © 2010 Sistemas Operativos – Almacenaje Secundario Dispositivos de Almacenajes Terciarios Bajo costo es la característica definida de los almacenajes terciarios. Generalmente, el almacenaje terciario es establecido sobre medios removibles. Ejemplos comunes son: floppy disks, CD-ROMs, DVD, pen drives. Sistemas Operativos – Almacenaje Secundario JRA © 2010 Cintas Comparada al disco, una cinta es menos costosa y almacena mas datos, pero el acceso aleatorio es mucho mas lento. La cinta es un medio económico para propósitos que no requieren acceso aleatorio rápido, p.e., copias de backup de datos de disco, pues mantienen gigantescos volúmenes de datos. Las grandes instalaciones usan cambiadores robóticos de cintas que mueven cintas entre dispositivos y las almacena en estantes de una librería de cintas. stacker – librería que mantiene varias cintas silo – librería mantiene miles de cintas A disk-resident file can be archived to tape for low cost storage; the computer can stage it back into disk storage for active use. JRA © 2010 Sistemas Operativos – Almacenaje Secundario Aspectos del Sistema Operativo Una de las mayores tareas son administrar los dispositivos físicos y presentar una abstracción de máquina virtual para las aplicaciones. Para los discos duros, el SO provee dos abstracciones: Dispositivos crudos – un arreglo de bloques de datos. Sistemas de Archivos – el SO encola y planifica los requerimientos entrelazados de varias aplicaciones. JRA © 2010 Sistemas Operativos – Almacenaje Secundario Precio por Megabyte de DRAM, desde 1981 a 2008 JRA © 2010 Sistemas Operativos – Almacenaje Secundario Precio por Megabyte de Disco, desde 1981 a 2008 JRA © 2010 Sistemas Operativos – Almacenaje Secundario Precio por Megabyte de Cintas, desde 1984 a 2008 JRA © 2010 Sistemas Operativos – Almacenaje Secundario Fin Módulo 12 Departamento de Informática Facultad de Ingeniería Universidad Nacional de la Patagonia “San Juan Bosco”