Вы находитесь на странице: 1из 48

Captulo 12: Sistemas de Almacenamiento

Masivo

Operating System Concepts with Java 7th Edition, Nov 15, 2006

Silberschatz, Galvin and Gagne 2007

Captulo 12: Sistemas de Almacenamiento


Masivo

Descripcin de la estructura de almacenamiento


masivo
Estructura de disco
Ligando (integrando) el disco
Planificacin de disco
Manejo de disco
Manejo de espacio de swap
Estructura de RAID
Implementacin de almacenamiento estable
Dispositivos de almacenamiento terciario
Detalles con el Sistema Operativo
Detalles de rendimiento

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Objetivos

Describir la estructura fsica del almacenamiento


secundario y terciario y los efectos resultantes en
el uso de los dispositivos
Explicar las caractersticas de rendimiento de los
dispositivos de almacenamiento masivo
Discutir los servicios provistos para
almacenamiento masivo, incluyendo RAID y HSM

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Descripcin de Estructura de Almacenamiento Masivo

Discos magnticos ofrecen el grueso del almacenamiento masivo en computadoras


modernas
Un drive tpico rota de 60 a 200 veces por segundo
Tasa de transferencia es el ritmo al cul fluyen datos entre el dispositivo y la
comptuadora
Tiempo de posicionamiento (tiempo de acceso-aleatorio) es el tiempo que
toma mover el brazo del disco al cilindro deseado (tiempo de bsqueda) y el
tiempo para que el sector deseado rote y quede debajo de cabeza (latencia
rotacional)
Choque de cabeza el resultado cuando la cabeza del dicso hace contacto con la
superficie del disco
Esto es muy malo
Los discos pueden ser externos
Dispositivo conectado a la computadora via bus de E/S
Los busses varan, incluyendo EIDE, ATA, SATA, USB, Fibre Channel, SCSI

Controlador de host en la computadora utiliza el bus para hablar con el


controlador de disco o el arreglo de discos

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Mecanismo de disco de cabeza-mvil

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Descripcin de Estructura de Almacenamiento Masivo

Cinta magntica
Medio original de almacenamiento-secundario
Relativamente permanente y mantiene grandes cantidades
de datos
Tiempo de acceso lento
Acceso aleatorio ~1000 veces ms lento que el disco
Principalmente utilizado para respaldo, almacenamiento de
datos utilizados con poca frecuencia, medio de
transferencia entre sistemas
Se mantiene en carrete y se avanzan o retrasan sobre la
cabeza de lectura-escritura
Una vez bajo la cabeza, ritmo de transferencia comparable
al de disco
Almacenamiento tpico 20-200GB
Tecnologas comunes: 4mm, 8mm, 19mm, LTO-2 y SDLT

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Estructura de disco

Los discos son referidos como grandes arreglos 1dimensionales de bloques lgicos, donde el bloque
lgico es la unidad mnima de transferencia.

El arreglo 1-dimensional de bloques lgicos se


mapea secuencialmente en los sectores del disco.
El sector 0 es el primer sector del primer trac en
el cilindro ms externo.
El mapeo procede en orden a lo largo del trac,
luego los dems tracks en el cilindro y finalmente
en el resto de los cilindros del ms externo, al
ms interno.

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Conexin de disco

Almacenamiento conectado al host se accede a travs de


puertos de E/S que hablan con busses de E/S
SCSI es un bus en s mismo, hasta 16 dispositivos en un slo
cable, iniciador de SCSI solicita la operacin y los objetivos
SCSI la realizan
Cada objetivo puede tener hasta 8 unidades lgicas
(discos conectados al controlador)

FC es arquitectura serial de alta velocidad

Puede fabricarse con un espacio de direcciones de 24-bits


la base de storage area networks (SANs): muchos
hosts se conectan con varias unidades de almacenamiento
Puede ser un ciclo arbitrado (arbitrated loop, FC-AL) de
126 dispositivos

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Almacenamiento conectado-en-red

Almacenamiento conectado-en-red (Network-attached storage, NAS)


es almacenamiento disponible a travs de una red en lugar de una
conexin local (como un bus)
NFS y CIFS son protocolos comunes
Se implementan a travs de llamadas a procedimientos remotos
(RPCs) entre el host y el almacenamiento
El nuevo protocolo iSCSI utiliza red IP para soportar el protocolo
SCSI

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Storage Area Network (SAN)

Comn en ambientes con gran almacenamiento (y


cada vez ms utilizado)
Muchos hosts conectados a muchos arreglos de
almacenamiento -- flexible

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Planificador de disco

El sistema operativo es responsable de utilizar el hardware


eficientemente en el caso de los discos, esto significa un
tiempo de acceso rpido y ancho de banda.
Tiempo de acceso tiene dos componentes mayores
Tiempo de bsqueda es el tiempo que toma al disco
mover las cabezas al cilindro que contiene el sector
deseado.
Latencia rotacional es el tiempo adicional esperando a
que el disco rote y posicione el sector deseado a la
cabeza del disco.
Minimizar tiempo de bsqueda
Tiempo de bsqueda distancia de bsqueda
El ancho de banda del disco es el nmero total de bytes
transferidos, divididos por el tiempo total entre la primera
solicitud de servicio y el termino de la ltima transferencia.

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Planificador de disco

Existen distintos algoritmos para organizar el


servicio de solicitudes de E/S de disco.
Vamos a ilustrarlos con una cola de solicitudes
(0-199).
98, 183, 37, 122, 14, 124, 65, 67
Apuntador de cabeza: 53

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

FCFS
La ilustracin muestra el movimiento total de la cabeza de 640 cilindros.

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

SSTF

Selecciona la solicitud con el menor tiempo de


bsqueda desde la posicin actual de la cabeza.
SSTF es una forma de planificador SJF; puede
provocar hambruna para algunas solicitudes.
La siguiente ilustracin muestra el movimiento total
de cabeza para 236 cilindros.

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

SSTF (Cont.)

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

SCAN

El brazo empieza en un extremo del disco y se


mueve hacia el otro extremo, sirviendo solicitudes
hasta que llega al otro extremo, donde se voltea el
movimiento de la cabeza y sigue sirviendo.
Algunas veces llamado algoritmo de elevador.
La ilustracin muestra el movimiento total de
cabeza para 208 cilindros.

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

SCAN (Cont.)

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

C-SCAN

Provee un tiempo de espera ms uniforme que


SCAN.
La cabeza se mueve de un extremo del disco al
otro, sirviendo solicitudes conforme avanza.
Cuando llega al otro extremo, sin embargo, regresa
al inicio del disco, sin atender ninguna solicitud en
el camino de regreso.
Trata los cilindros como una lista circular que da la
vuelta del ltimo cilindro al primero.

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

C-SCAN (Cont.)

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

C-LOOK

Versin de C-SCAN
El brazo slo va tan lejos como la ltima solicitud
en cada direccin, da reversa inmediatamente, sin
antes ir hasta el final del disco.

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Seleccionado un planificador de disco

SSTF es comn y tiene un atractivo natural


SCAN y C-SCAN ofrecen mejor rendimiento para sistemas que
imponen una carga pesada en el disco.
El rendimiento depende en el nmero y tipo de solicitudes.
Solicitudes para servicio de disco pueden ser influenciadas por
el mtodo de asignacin de archivos.
El algoritmo de planificacin del disco debe estar escrito como
un mdulo del sistema operativo, permitiendo cambiarlo si es
necesario.
Tanto SSTF o LOOK son un algoritmo razonable para utilizar
por omisin.

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Manejo de disco

Formato de bajo-nivel, o formato fsico Dividir un disco en


sectores que el controlador del disco puede leer y escribir.
Para utilizar un disco para mantener archivos, el sistema
operativo necesita almacenar sus estructuras de datos en el
disco.
Particionar el disco en uno o ms grupos de cilindros.
Formato lgico o creando un sistema de archivos.
El bloque de booteo inicializa el sistema.
El bootstrap est almacenado en ROM.
Programa cargador en el bootstrap.
Mtodos como sectores de repuesto utilizados para manejar
bloques malos.

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Booting desde un disco en Windows 2000

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Manejo de espacio swap

Espacio swap Memoria virtual utiliza espacio en disco


como una extensin de la memoria principal.
El espacio de swap puede sacarse del sistema de archivos
normal o, ms comn, puede vivir en una particin de disco
separada.
Manejo de espacio de swap
4.3BSD asigna espacio de swap cuando un proceso
inicia; mantiene un segmento de texto (el programa) y un
segmento de datos.
El kernel utiliza mapas de swap para seguir la utilizacin
del espacio de swap.
Solaris 2 asigna espacio de swap solo cuando una pgina
es forzada fuera de la memoria principal.

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Estructuras de datos para swap en Linux

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Estructura de RAID

RAID mltiples discos proveen confiabilidad y


redundancia.

RAID est dividido en seis niveles.

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

RAID (cont)

Muchos avances en las tcnicas de uso de disco involucran


el uso de varios discos trabajando cooperativamente.

Disk striping utiliza un grupo de discos como una unidad de


almacenamiento.

Los esquemas RAID mejoran el rendimiento y confiabilidad


del sistema de almacenamiento, guardando datos
redundantes.
Mirroring o shadowing mantiene duplicados de cada
disco.
Block interleaved parity utiliza menos redundancia.

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Niveles RAID

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

RAID (0 + 1) y (1 + 0)

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Implementacin almacenamiento-estable

El esquema de bitcora write-ahead requiere


almacenamiento estable.

Para implementar almacenamiento estable:


Replicar informacin en ms de un medio de
almacenamiento no-voltil con modos de fallo
independientes.
Actualizar informacin de manera controlada
para asegurar que podemos recuperar los
datos despus de cualquier falla durante la
transferencia de datos o recuperacin.

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Dispositivos de almacenamiento terciario

Bajo costo es la caracterstica definitoria del


almacenamiento terciario.

Generalmente, almacenamiento terciario se crea


utilizando medios movibles.

Ejemplos comunes de medios movibles son los


floppys, CD-ROMs, etc.

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Discos movibles

Disco floppy disco flexible y delgado con capa de


material magntico, dentro de un estuche protector
de plstico.

La mayora de lo floppys mantienen 1 MB;


tecnologa similar se utiliza para otros medios
que mantienen ms de 1GB.
Los discos magnticos movibles pueden ser tan
rpidos como los discos duros, pero estn ms
expuestos a dao por exposicin.

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Discos movibles

Un disco magntico-ptico almacena datos en un disco rgido


revestido con material magntico.
Calor de lser es utilizado para amplificar un gran, pero
dbil campo magntico para almacenar un bit.
La luz del lser se utiliza para leer datos (efecto Kerr).
La cabeza magntico-ptica vuela ms lejos de la
superficie del disco que las de discos magnticos. Adems
la cubierta magntica tiene una capa protectora de plstico
o cristal que resiste los choques de cabeza.

Los discos pticos no utilizan magnetismo; emplean


materiales especiales que son alterados por la luz del lser.

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Discos WORM

Los datos en discos de lectura-escritura pueden ser


modificados una y otra vez.
Discos WORM (Write Once, Read Many Times) pueden ser
escritos solamente una vez.
Una pelcula de aluminio se hace sandwich en dos placas de
cristal o plstico.
Para escribir un bit, el drive utiliza una luz lser para quemar
un pequeo hoyo en el aluminio; se puede destruir la
informacin, pero no alterarla.
Muy durable y confiable.
Discos de Slo Lectura, tales como CD-ROM y DVD,vienen
de fabrica con los datos pre-grabados.

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Cintas

Comparada con un disco, la cinta es menos costosa y


almacena ms datos, pero el acceso aleatorio es ms lento.
La cinta es un medio econmico para propsitos que no
requieren un acceso aleatorio rpido, v.gr. copias de respaldo
de datos o para mantener enormes volmenes de datos.
Instalaciones grandes de cinta tpicamente utilizan
cambiadores de cinta roboticos, que mueven cintas entre los
drives y las ranuras en la biblioteca de cintas.
stacker biblioteca que almacena algunas cintas
silo biblioteca que almacena miles de cintas
Un archivo que reside en disco, puede ser archivado en cinta
para almacenamiento de bajo costo; la computadora puede
regresarlo a disco para uso activo.

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Detalles del sistema operativo

Entre las tareas principales del SO est la de


manejar dispositivos fsicos y presentar una
abstraccin de mquina virtual a las aplicaciones

Para discos duros, el SO provee dos abstracciones:


Dispositivo crudo (raw) arreglo de bloques de
datos.
Sistema de archivos el SO encola y planifica las
solicitudes intercaladas de varias aplicaciones.

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Interfaz de aplicacin

La mayora de los SOs manejan discos movibles exactamente


igual que los discos fijos un nuevo cartucho es formateado y
se genera un sistema de archivos vaco en el disco.
Las cintas son presentadas como un medio crudo de
almacenamiento, i.e. una aplicacin no abre un archivo en la
cinta, abre toda la cinta como dispositivo crudo.
Usualmente el dispositivo de cinta se reserva para uso
exclusivo de esa aplicacin.
Dado que el SO no provee un sistema de archivos, la apliccin
debe decidir como utilizar el arreglo de bloques.
Dado que cada aplicacin hace sus propias reglas sobre como
utilizar una cinta, si una tiene datos, puede ser utilizada solo
por el programa que la creo.

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Drives de cinta

Las operaciones bsicas para un drive de cinta


difieren de aquellas de un drive de disco.
localizar posiciona la cinta en un bloque lgico
especfico, no un track entero (corresponde a seek).
La operacin read position regresa el nmero de
bloque lgico donde est la cabeza de la cinta.
La operacin space habilita movimiento relativo.
Drives de cinta son dispositivos de slo aadir;
actualizar un bloque en el medio de una cinta
tambin borra efectivamente todo lo que sigue a ese
bloque.
Una marca EOT se pone despus de escribir un
bloque.

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Nombrado de archivos

El asunto de nombrar archivos en media movible es


particularmente difcil cuando queremos escribir
datos en un cartucho movible en una computadora,
y luego utilizar el cartucho en otra computadora.
Los SO contemporneos dejan el asunto de
nombrado sin resolver para medios movibles y
dependen en las aplicaciones y usuarios para
entender e interpretar esos datos.
Algunos medios movibles (v.gr. CDs) estn tan bien
difundidos que todas las computadoras los utilizan
de la misma manera.

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Manejo de Almacenamiento Jerrquico (HSM)

Un sistema de almacenamiento jerrquico extiende la jerarqua


de almacenamiento ms all de memoria principal y
almacenamiento secundario para incorporar almacenamiento
terciario usualmente implementado a travs de un conjunto
de cintas y discos movibles.
Usualmente se incorpora el almacenamiento terciario
extendiendo el sistema de archivos.
Archivos pequeos o utilizados frecuentemente se
mantienen en el disco.
Arcivos grandes viejos o inactivos se mueven al terciario.
HSM es usualmente encontrado en centros de sper-cmputo
y otras instalaciones grandes y con volmenes enormes de
datos.

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Velocidad

Dos aspectos de velocidad en el almacenamiento


terciario son el ancho de banda y latencia.

El ancho de banda se mide en bytes por segundo.


Ancho de banda sostenido tasa promedio de
transferencia de datos durante una transferencia
larga; # de bytes/tiempo de transferencia.
Tasa de transferencia cuando el stream de datos
est fluyendo.
Ancho de banda efectivo promedio durante el
tiempo de E/S completo, incluyendo seek o
locate, y cambio de cartuchos.

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Velocidad

Latencia de acceso cantidad de tiempo requerida para


localizar datos.
Tiempo de acceso para un disco mover el brazo al
cilindro seleccionado y esperar la latencia rotacional;
< 35 milisegundos.
Acceso en cinta requiere rebobinar el carrete hasta que el
bloque seleccionado alcanza la cabeza; decenas de
cientos de segundos.
En general podemos decir que el tiempo de acceso
aleatorio en un carrete de cinta es mil veces ms lento que
en un disco.
El bajo costo del almacenamiento terciario es el resultado de
tener muchos cartuchos baratos que comparten unos cuantos
drives costosos.
Una biblioteca movible es mejor si se destina al
almacenamiento de datos utilizados con poca frecuencia,
dado que solo puede atender un pequeo nmero de
solicitudes de E/S por hora.

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Confiabilidad

Un drive de disco fijo es con seguridad ms


confiable que uno disco o cinta movible.
Un cartucho ptico es probablemente ms
confiable que un disco o cinta magntica.
Un choque de cabeza es un disco fijo
generalmente destruye los datos, mientras que
la falla de un drive de cinta o un disco ptico
generalmente no daa los datos.

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Costo

Memoria principal es mucho ms cara que el


almacenamiento en disco
El costo por megabyte del almacenamiento en
disco duro compite con el de cintas magnticas,
si se utiliza una cinta por drive.
Los drives de cinta y disco ms baratos han
tenido a lo largo de los aos la misma capacidad.
Almacenamiento terciario ofrece ahorros solo
cuando el nmero de cartuchos es
considerablemente ms grande que el nmero
de drives.

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Precio p/Megabyte de DRAM, de 1981 a 2004

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Precio p/Megabyte de DD Magntico, de 1981 a 2004

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Precio p/Megabyte de Drive Cinta, de 1984 a 2000

Operating System Concepts with Java 7th Edition, Nov 15, 2006

12.

Silberschatz, Galvin and Gagne 2007

Fin del Captulo 12

Operating System Concepts with Java 7th Edition, Nov 15, 2006

Silberschatz, Galvin and Gagne 2007

Вам также может понравиться