Sistemas Operativos
Curso 2016
Estructuras de dispositivos
masivos de datos
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 2/45
Agenda
 Estructura de almacenamiento masivo
 Planificación de disco.
 Manejo de discos
 Estructuras RAID.
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 3/45
Discos
 Dispositivos para almacenamiento no volátil
 Son dispositivos electrómecánicos (HARD DISK) u optomecánicos
(CD_ROM y DVD), se acceden a nivel de bloques por el sistema de
archivos.
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 4/45
Discos
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 5/45
Cintas
 Relativamente permanente y almacena una gran cantidad de datos
 Tiempo de acceso lento
 Acceso aleatorio 1000 veces más lentos que discos
 Se usa para backup
 Tamaños de varios terabytes en modo comprimido
 Tecnología LTO-5 / SDLT
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 6/45
Discos
Controlador de Disco
Bus de E/S del Disco (SCSI, IDE, SATA, etc.)
Disco
Bus E/S de la Computadora
mensajes
CPU RAM
Controlador del equipo
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 7/45
Storage Area Network (SAN)
 Muy común en ambientes grandes
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 8/45
Network Attached Storage (NAS)
 Se accede al almacenamiento a través de la red y no a través de una
conexión local (BUS)
 Implementado a través de RPC entre host y storage
 Protocolo iSCSI usa el protocolo TCP o UDP sobre una red IP para
transportar el protocolo SCSI
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 9/45
Planificación de disco
 El sistema operativo es responsable de usar el hardware de forma
eficiente. Desde la perspectiva del disco, esto significa obtener un rápido
acceso a los datos y aprovechar al máximo el ancho de banda al disco.
 Es por eso que el planificador de disco es uno de los más importantes.
 El acceso a disco tiene dos grandes componentes:
– Tiempo de posicionamiento (seek time): Es el tiempo que el brazo del disco
necesita para posicionar la cabeza en el cilindro que contiene el sector.
– Latencia de rotación (rotational latency): Es el tiempo que demora rotar el
plato al sector correcto.
 Tiempo de acceso = Tiempo de posicionamiento + Tiempo de rotación +
Tiempo de transferencia
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 10/45
Planificación de disco
 El ancho de banda (bandwidth) de un disco es la cantidad de bytes
transferidos, dividido por tiempo total de la transferencia (desde el
comienzo del pedido hasta la última transferencia).
 Ejemplo
– tiempos de disco: 7200 rpm = 1 revolución cada 60/7200 segundos
⇒ 1 revolución cada 8,333.. milisegundos
– Latencia promedio ½ revolución ⇒ 4,16666... milisegundos
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 11/45
Planificación de disco
Proceso
1
Proceso
2
Proceso
3
Controlador
de disco
Kernel
Requerimiento de bloques
Requerimiento archivos
Cola requerimientos
de disco
requerimiento
bloque x
(x está en cilindro y)
Disco
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 12/45
Planificación de disco
 Para mejorar el acceso a los datos se debe minimizar el tiempo de
búsqueda. De esa forma, surgen varios métodos de planificación de
disco:
– FCFS.
– SSTF.
– SCAN.
– C-SCAN.
– LOOK.
– C-LOOK.
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 13/45
FCFS – First-Come, First-Served
 En este caso la planificación es realizar los pedidos como vayan
llegando.
 En un disco con 200 cilindros (numerados del 0 al 199), la cabeza
posicionada en el cilindro 53 y una lista de pedidos:
 98, 183, 37, 122, 14, 124, 65, 67
 Genera un movimiento de la cabeza sobre 640 cilindros.
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 14/45
FCFS – First-Come, First-Served
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 15/45
SSTF – Shortest Seek Time First
 Se elige como próximo pedido a realizar el que genere menos tiempo de
búsqueda (seek time).
 Esto puede generar que pedidos nunca sean ejecutados o demorados
mucho tiempo.
 Para el ejemplo anterior tenemos que la cabeza recorrerá un total de 236
cilindros.
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 16/45
SSTF – Shortest Seek Time First
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 17/45
SCAN y C-SCAN
 SCAN
– El brazo posiciona la cabeza al comienzo del disco y la mueve hacia el otro
extremo, resolviendo los pedidos mientras pasa por los cilindros. Al llegar al
final, hace el camino inverso resolviendo las solicitudes.
– Es también llamado el algoritmo del elevador.
– En este caso se recorre un total de 208 cilindros.
 C-SCAN
– Es igual que el SCAN, pero al llegar al final del disco en la recorrida, vuelve al
principio inmediatamente sin resolver ningún pedido.
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 18/45
SCAN
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 19/45
C-SCAN
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 20/45
C-LOOK
 Es parecido al C-SCAN, pero el brazo va hasta donde haya pedidos y
retorna hacia el otro sentido.
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 21/45
Conclusiones
 SSTF y LOOK son los más utilizados.
 SCAN y C-SCAN han demostrado ser mejores ante sistemas que tienen
una alta carga en disco.
 El servicio de disco es muy dependiente del método de asignación de
archivos.
 El algoritmo de planificación del disco debe estar escrito como un módulo
del sistema operativo, permitiendo cambiarlo si es necesario
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 22/45
Manejo de Disco
 Formateo del disco: formateo de bajo nivel o formateo físico.
– Dividiendo el disco en sectores que el controlador de discos pueda leer o
escribir.
 Para usar el disco para almacenar archivos el sistema operativo necesita
guardar su propia estructura en el disco
– Particionamiento del disco en un o más grupos de cilindros
– Formateo lógico o “armado de un sistema de archivos”
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 23/45
Manejo de Disco
Sector Sector Sector ….
Material magnético que puede almacenar bits
Disco antes del formateo debajo nivel
Disco luego del formateo de bajo nivel
ECC
Data (512 bytes)
Número de sector Código de corrección de errores
HDR
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 24/45
Sector de Boot
 El código de boot es
ejecutado en ROM,
este trae el MBR a
memoria y empieza a
ejecutarlo
 Ejecuta el MBR, mira
la tabla de
particionamiento,
aprende la particion
boot, trae y ejecuta la
partición de boot
 El código de boot en
el bloque de boot
carga el kernel que
está en esa partición.
RAM Disco
partition table
Pequeño
programa
Boot
ROM
MBR
Boot Block
CPU
Código de boot
Power ON
kernel
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 25/45
Estructuras RAID
 Los sistemas de almacenamiento de disco (storage) presentan
tecnologías orientadas a mejorar el servicio.
 Las mejoras implementadas se basan en dar:
– Confiabilidad: Casos de fallo de discos.
– Performance: Lograr mejorar los tiempos de transferencia.
 Las técnicas denominadas RAID (Redundant Array of Inexpensive Disks)
tienen una amplia aceptación.
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 26/45
Estructuras RAID
 La confiabilidad es lograda a través de redundancia de la información.
 La redundancia puede darse duplicando discos (mirror), o a través de bits
de control.
 La mejora de los tiempo de respuesta (performance) se logra a través de
la disposición de la información en los diferentes discos.
 Técnicas de striping son utilizadas a nivel de bit, byte, sectores, bloque
de sectores y bloque.
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 27/45
Estructuras RAID
Controladora RAID
Controladora
disco
Controladora
disco
Controladora
disco
Controladora
disco
Sistema Operativo
Dame los bloques (n, n+1, …, n+k) del disco (k bloques contiguos)
n n+1 n+2 n+3
dar block n
dar block n+1
dar block n+2
dar block n+3
Disco Disco Disco Disco
Striping
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 28/45
Diferentes niveles de RAID
 RAID 0.
 RAID 1.
 RAID 2.
 RAID 3.
 RAID 4.
 RAID 5.
 RAID 6.
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 29/45
RAID 0
 Un RAID 0 (stripe set o striped volume) divide los datos de forma
homogénea en dos o más discos, sin información de paridad para la
redundancia.
 El RAID 0 no era uno de los niveles RAID originales y no proporciona
redundancia de datos.
 RAID 0 se utiliza normalmente para aumentar el rendimiento, aunque
también se puede utilizar como una forma de crear grandes discos
virtuales de un gran número de pequeñas unidades físicas.
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 30/45
RAID 0 - Diagrama
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 31/45
RAID 0 - Rendimiento
 Si bien el tamaño del bloque técnico, pueden ser tan pequeño como un
byte, es casi siempre un múltiplo del tamaño del disco duro de sector de
512 bytes.
 Si los sectores accedidos se distribuyan de forma equilibrada entre las N
unidades, el acceso aleatorio será N veces mas rápido.
 La velocidad de transferencia de la matriz será la velocidad de
transferencia de todos los discos sumados, limitado sólo por la velocidad
de la controladora RAID.
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 32/45
RAID 1
 Un RAID 1 crea una copia exacta (o espejo) de un conjunto de datos en
dos o más discos.
 Esto es útil cuando el rendimiento de lectura o la confiabilidad son más
importantes que la capacidad de almacenamiento de datos.
 Este tipo de arreglo sólo puede ser tan grande como el disco más
pequeño. Un clásico RAID 1 par duplicado contiene dos discos.
 Puesto que cada miembro contiene una copia completa de los datos, que
pueden tratarse de forma independiente, la fiabilidad es incrementada por
la potencia del número de copias.
 Protección eficaz contra la falla de disco físico, no contra la corrupción de
datos debido a virus, cambios o eliminaciones accidentales de archivos,
etc.
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 33/45
RAID 1 - Diagrama
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 34/45
RAID 2
 Organización de corrección de errores similar al de memoria
 ECC (Error Correcting Code):
– Cada byte en memoria puede tener un bit de paridad
– si es par ⇒ paridad 0 si impar ⇒ paridad 1
– Para corregir errores necesitamos más bits
 Idea de ECC en array de discos:
bx: bits de datos
Disco 1 Disco 2 Disco 3 Disco 4 Disco 5 Disco 6 Disco 7
b0 b1 b2 b3
b4 b5 b6 b7
…. …. …. ….
c0
c0
c1
c1
c2
c2
cx: bits de control
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 35/45
RAID 2
 División a nivel de bits
 Usa código de Hamming para corrección de errores
 Los discos son sincronizados por la controladora para funcionar a la vez.
 No es usado por ser inaplicable en la práctica
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 36/45
RAID 3
 División a nivel de bits
 Usa un disco de paridad dedicado. Usa XOR en lugar de Hamming
 Una operación de lectura o escritura necesita que todos los discos
funcionen a la vez
 Se necesita un mínimo de 3 discos
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 37/45
RAID 3
Disco 1 Disco 2 Disco 3 Disco 4 Disco 5
1 0 1 1 1
0 1 0 1 0
…. …. …. ….
Paridad par
….
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 38/45
RAID 3
Disco 1 Disco 2 Disco 3 Disco 4 Disco 5
1 0 1 1 1
0 1 0 1 0
…. …. ….
…. ….
Con los discos 1,2,4 y 5 podemos recalcular el 3
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 39/45
RAID 4
 Similar a Raid 3. Usa división a nivel de bloques
 Usa un disco de paridad
 Permite lecturas en paralelo pero no puede hacer pequeñas escrituras en
paralelo.
 Una pequeña escritura implica 2 lecturas y 2 escrituras
Bloque 0 Bloque 1 Bloque 2 Bloque 3
Bloque
Paridad
Bloque 4 Bloque 5 Bloque 6 Bloque 7
Bloque 8 Bloque 9 Bloque 10 Bloque 11
Disco 1 Disco 2 Disco 3 Disco 4 Disco 5
Bloque
Paridad
Bloque
Paridad
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 40/45
RAID 5
 Similar a RAID 4 pero los datos de paridad son distribuidos entre todos
los discos miembros.
 RAID 5 es muy popular debido a su bajo costo de redundancia.
 4 unidades de 1TiB pueden construir un arreglo de 3 TiB en RAID 5.
Bloque 0 Bloque 1 Bloque 2 Bloque 3
Bloque
Paridad
Bloque 4 Bloque 5 Bloque 6 Bloque 7
Bloque 8 Bloque 9 Bloque 10 Bloque 11
Disco 1 Disco 2 Disco 3 Disco 4 Disco 5
Bloque
Paridad
Bloque
Paridad
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 41/45
RAID 5
 En el ejemplo, una solicitud de lectura para el bloque 0 sería servida por
el disco 0.
 Una solicitud de lectura simultánea para el bloque 4 tendría que esperar,
pero una solicitud de lectura del bloque 1 podría ser resuelta al mismo
tiempo por el disco 1 logrando mejor tiempo de respuesta.
 Si falla un disco puede seguir funcionando
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 42/45
RAID 5 – Manejo de paridad (parity handling)
 Una serie de bloques simultáneos (uno en cada uno de los discos de una
matriz) se le llama colectivamente una raya. Si otro bloque, o alguna
parte del mismo, está escrito en esa misma franja, el bloque de paridad, o
alguna parte del mismo, se vuelve a calcular y reescrito.
 Para las pequeñas escrituras requiere:
– Leer el bloque de datos antiguos.
– Leer el bloque de paridad antiguo.
– Comparar el bloque de datos antiguo con la solicitud de escritura. Por cada bit
que se ha invertido (cambia de 0 a 1, o de 1 a 0) en el bloque de datos, dar la
vuelta el bit correspondiente en el bloque de paridad.
– Escribe el bloque de datos nuevos.
– Escriba el nuevo bloque de paridad.
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 43/45
RAID 5 – Manejo de paridad (parity handling)
 Una serie de bloques simultáneos (uno en cada uno de los discos de una
matriz) se le llama colectivamente una raya. Si otro bloque, o alguna
parte del mismo, está escrito en esa misma franja, el bloque de paridad, o
alguna parte del mismo, se vuelve a calcular y reescrito.
 Para las pequeñas escrituras requiere:
– Leer el bloque de datos antiguos.
– Leer el bloque de paridad antiguo.
– Comparar el bloque de datos antiguo con la solicitud de escritura. Por cada bit
que se ha invertido (cambia de 0 a 1, o de 1 a 0) en el bloque de datos, dar la
vuelta el bit correspondiente en el bloque de paridad.
– Escribe el bloque de datos nuevos.
– Escriba el nuevo bloque de paridad.
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 44/45
RAID 5
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 45/45
RAID 6
 Agrega un segundo esquema de paridad al Raid 5
 Ineficiente para pequeño número de discos
 Protección ante fallos de 2 discos
 Puede ser más adecuado que un Raid 5 + 1 disco de reserva
Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 46/45
RAID 0+1 y 1+0
Primero se divide, luego espejado
Es un espejo de divisiones
Primero espejado, luego división
Es una división de espejos
RAID 0+1
RAID 1+0
RAID 0+1

Más contenido relacionado

PPT
introduccion a respaldos y accesos a informacion
PPTX
Analizando la performance del subsistema de IO
PPTX
Sistema de archivos y almacenamiento secundario
PPTX
Entendiendo el sistema de almacenamiento de datos y SQL Server
PDF
Almacenamiento en disco: mejora de la velocidad y de la seguridad - Juan Piernas
PPT
Almacenamiento y estructura de archivos
PDF
PPTX
Consideraciones de hardware para SQL Server
introduccion a respaldos y accesos a informacion
Analizando la performance del subsistema de IO
Sistema de archivos y almacenamiento secundario
Entendiendo el sistema de almacenamiento de datos y SQL Server
Almacenamiento en disco: mejora de la velocidad y de la seguridad - Juan Piernas
Almacenamiento y estructura de archivos
Consideraciones de hardware para SQL Server

Similar a Algoritmos de Planificación Disco Duro.pdf (20)

PDF
Memoria Externa, Unidadad de Entrada/Salida, Introducción al Sistema Operativo
PPTX
Memoria externa
PPTX
Esquema de almacenamiento raid
PPTX
La Mejor opción NAS Enterprise con la Serie TS-ECX80U
PPTX
Sistemas de almacenamiento RAID
PPTX
Bases De Datos Paralelas
PPTX
Qnap TVC-EC1580MU
PPTX
TVS-ECx80U-SAS-RP Auto-Organización NAS (Español)
DOCX
Paso4 colborativo3 grupo11
PPT
File System Management
PPTX
Bases De Datos Paralelas
PPTX
Fundamentos de servidores informáticos
DOCX
PRACTICAS 5 Y 6
PDF
PRACTICAS 5 Y 6 JESUS
PPTX
Formación en Almacenamiento, Open Storage Soluciones Low Cost.
PPTX
Taller sena 10.2
PPTX
Taller sena 10.2
DOCX
Disco maestro y esclavo
Memoria Externa, Unidadad de Entrada/Salida, Introducción al Sistema Operativo
Memoria externa
Esquema de almacenamiento raid
La Mejor opción NAS Enterprise con la Serie TS-ECX80U
Sistemas de almacenamiento RAID
Bases De Datos Paralelas
Qnap TVC-EC1580MU
TVS-ECx80U-SAS-RP Auto-Organización NAS (Español)
Paso4 colborativo3 grupo11
File System Management
Bases De Datos Paralelas
Fundamentos de servidores informáticos
PRACTICAS 5 Y 6
PRACTICAS 5 Y 6 JESUS
Formación en Almacenamiento, Open Storage Soluciones Low Cost.
Taller sena 10.2
Taller sena 10.2
Disco maestro y esclavo
Publicidad

Más de IngJoseFernandoEscob (6)

PDF
cap4-grafos-2en1.pdf. .
PPT
Arboles_AVL.ppt. .
PDF
subneteo.pdf. .
PDF
Arboles AVL (1).pdf. .
PDF
Permutaciones-y-Combinatorio. .
PPT
INDUCCION MATEMATICA PARA MATEMATICA DISCRETA
cap4-grafos-2en1.pdf. .
Arboles_AVL.ppt. .
subneteo.pdf. .
Arboles AVL (1).pdf. .
Permutaciones-y-Combinatorio. .
INDUCCION MATEMATICA PARA MATEMATICA DISCRETA
Publicidad

Último (20)

PDF
Evolución y sistemática microbiana agronomía
PPTX
TRABAJOS DE ALTO RIESGO ELEC - LOTO.pptx
PDF
SESION 01 - LEY 29783, LEY DE SEGURODAD Y SALUD EN EL TRABAJO (1) (1).pdf
PDF
experto-gestion-calidad-seguridad-procesos-quimicos-industriales-gu.pdf
PPTX
ETICA PROFESIONAL PARA MOTIVACION PERSONAL
PDF
alimentos de bebidas45rtrtytyurrrr 1.pdf
PDF
Presentacion_Resolver_CEM_Hospitales_v2.pdf
PDF
clase 1 dermocosmetica 2025 I (1).pdf..
PDF
IMPORTANCIA DE CARNE DE COBAYOS- CUYES CRI
PPTX
MAQUINAS DE FLUIDO - UNIDAD I.pptx
PPTX
PROCESOS DE REGULACION DE CRECIMIENTO.pptx
PDF
MODULO 1 Base Legal Nacional y sus aplicaciones.pdf
PPTX
TRABAJOS DE ALTO RIESGO IZAJE Y CALIENTE.pptx
PPT
flujo de caja 2 para la evaluacion de proyectos
PDF
Clase 2 de abril Educacion adistancia.pdf
PPTX
Identificacion de Peligros mediante GTC 45
PDF
BROCHURE SERVICIOS CONSULTORIA ISOTEMPO 2025
PPT
CLASE_1_CICLO_HIDROLOGICO_ALUMNOS_2015.ppt
PDF
2. Gestión del alcance gestion de proyetos.pdf
PPTX
Investigacioncientificaytecnologica.pptx
Evolución y sistemática microbiana agronomía
TRABAJOS DE ALTO RIESGO ELEC - LOTO.pptx
SESION 01 - LEY 29783, LEY DE SEGURODAD Y SALUD EN EL TRABAJO (1) (1).pdf
experto-gestion-calidad-seguridad-procesos-quimicos-industriales-gu.pdf
ETICA PROFESIONAL PARA MOTIVACION PERSONAL
alimentos de bebidas45rtrtytyurrrr 1.pdf
Presentacion_Resolver_CEM_Hospitales_v2.pdf
clase 1 dermocosmetica 2025 I (1).pdf..
IMPORTANCIA DE CARNE DE COBAYOS- CUYES CRI
MAQUINAS DE FLUIDO - UNIDAD I.pptx
PROCESOS DE REGULACION DE CRECIMIENTO.pptx
MODULO 1 Base Legal Nacional y sus aplicaciones.pdf
TRABAJOS DE ALTO RIESGO IZAJE Y CALIENTE.pptx
flujo de caja 2 para la evaluacion de proyectos
Clase 2 de abril Educacion adistancia.pdf
Identificacion de Peligros mediante GTC 45
BROCHURE SERVICIOS CONSULTORIA ISOTEMPO 2025
CLASE_1_CICLO_HIDROLOGICO_ALUMNOS_2015.ppt
2. Gestión del alcance gestion de proyetos.pdf
Investigacioncientificaytecnologica.pptx

Algoritmos de Planificación Disco Duro.pdf

  • 1. Sistemas Operativos Curso 2016 Estructuras de dispositivos masivos de datos
  • 2. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 2/45 Agenda  Estructura de almacenamiento masivo  Planificación de disco.  Manejo de discos  Estructuras RAID.
  • 3. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 3/45 Discos  Dispositivos para almacenamiento no volátil  Son dispositivos electrómecánicos (HARD DISK) u optomecánicos (CD_ROM y DVD), se acceden a nivel de bloques por el sistema de archivos.
  • 4. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 4/45 Discos
  • 5. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 5/45 Cintas  Relativamente permanente y almacena una gran cantidad de datos  Tiempo de acceso lento  Acceso aleatorio 1000 veces más lentos que discos  Se usa para backup  Tamaños de varios terabytes en modo comprimido  Tecnología LTO-5 / SDLT
  • 6. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 6/45 Discos Controlador de Disco Bus de E/S del Disco (SCSI, IDE, SATA, etc.) Disco Bus E/S de la Computadora mensajes CPU RAM Controlador del equipo
  • 7. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 7/45 Storage Area Network (SAN)  Muy común en ambientes grandes
  • 8. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 8/45 Network Attached Storage (NAS)  Se accede al almacenamiento a través de la red y no a través de una conexión local (BUS)  Implementado a través de RPC entre host y storage  Protocolo iSCSI usa el protocolo TCP o UDP sobre una red IP para transportar el protocolo SCSI
  • 9. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 9/45 Planificación de disco  El sistema operativo es responsable de usar el hardware de forma eficiente. Desde la perspectiva del disco, esto significa obtener un rápido acceso a los datos y aprovechar al máximo el ancho de banda al disco.  Es por eso que el planificador de disco es uno de los más importantes.  El acceso a disco tiene dos grandes componentes: – Tiempo de posicionamiento (seek time): Es el tiempo que el brazo del disco necesita para posicionar la cabeza en el cilindro que contiene el sector. – Latencia de rotación (rotational latency): Es el tiempo que demora rotar el plato al sector correcto.  Tiempo de acceso = Tiempo de posicionamiento + Tiempo de rotación + Tiempo de transferencia
  • 10. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 10/45 Planificación de disco  El ancho de banda (bandwidth) de un disco es la cantidad de bytes transferidos, dividido por tiempo total de la transferencia (desde el comienzo del pedido hasta la última transferencia).  Ejemplo – tiempos de disco: 7200 rpm = 1 revolución cada 60/7200 segundos ⇒ 1 revolución cada 8,333.. milisegundos – Latencia promedio ½ revolución ⇒ 4,16666... milisegundos
  • 11. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 11/45 Planificación de disco Proceso 1 Proceso 2 Proceso 3 Controlador de disco Kernel Requerimiento de bloques Requerimiento archivos Cola requerimientos de disco requerimiento bloque x (x está en cilindro y) Disco
  • 12. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 12/45 Planificación de disco  Para mejorar el acceso a los datos se debe minimizar el tiempo de búsqueda. De esa forma, surgen varios métodos de planificación de disco: – FCFS. – SSTF. – SCAN. – C-SCAN. – LOOK. – C-LOOK.
  • 13. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 13/45 FCFS – First-Come, First-Served  En este caso la planificación es realizar los pedidos como vayan llegando.  En un disco con 200 cilindros (numerados del 0 al 199), la cabeza posicionada en el cilindro 53 y una lista de pedidos:  98, 183, 37, 122, 14, 124, 65, 67  Genera un movimiento de la cabeza sobre 640 cilindros.
  • 14. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 14/45 FCFS – First-Come, First-Served
  • 15. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 15/45 SSTF – Shortest Seek Time First  Se elige como próximo pedido a realizar el que genere menos tiempo de búsqueda (seek time).  Esto puede generar que pedidos nunca sean ejecutados o demorados mucho tiempo.  Para el ejemplo anterior tenemos que la cabeza recorrerá un total de 236 cilindros.
  • 16. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 16/45 SSTF – Shortest Seek Time First
  • 17. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 17/45 SCAN y C-SCAN  SCAN – El brazo posiciona la cabeza al comienzo del disco y la mueve hacia el otro extremo, resolviendo los pedidos mientras pasa por los cilindros. Al llegar al final, hace el camino inverso resolviendo las solicitudes. – Es también llamado el algoritmo del elevador. – En este caso se recorre un total de 208 cilindros.  C-SCAN – Es igual que el SCAN, pero al llegar al final del disco en la recorrida, vuelve al principio inmediatamente sin resolver ningún pedido.
  • 18. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 18/45 SCAN
  • 19. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 19/45 C-SCAN
  • 20. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 20/45 C-LOOK  Es parecido al C-SCAN, pero el brazo va hasta donde haya pedidos y retorna hacia el otro sentido.
  • 21. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 21/45 Conclusiones  SSTF y LOOK son los más utilizados.  SCAN y C-SCAN han demostrado ser mejores ante sistemas que tienen una alta carga en disco.  El servicio de disco es muy dependiente del método de asignación de archivos.  El algoritmo de planificación del disco debe estar escrito como un módulo del sistema operativo, permitiendo cambiarlo si es necesario
  • 22. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 22/45 Manejo de Disco  Formateo del disco: formateo de bajo nivel o formateo físico. – Dividiendo el disco en sectores que el controlador de discos pueda leer o escribir.  Para usar el disco para almacenar archivos el sistema operativo necesita guardar su propia estructura en el disco – Particionamiento del disco en un o más grupos de cilindros – Formateo lógico o “armado de un sistema de archivos”
  • 23. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 23/45 Manejo de Disco Sector Sector Sector …. Material magnético que puede almacenar bits Disco antes del formateo debajo nivel Disco luego del formateo de bajo nivel ECC Data (512 bytes) Número de sector Código de corrección de errores HDR
  • 24. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 24/45 Sector de Boot  El código de boot es ejecutado en ROM, este trae el MBR a memoria y empieza a ejecutarlo  Ejecuta el MBR, mira la tabla de particionamiento, aprende la particion boot, trae y ejecuta la partición de boot  El código de boot en el bloque de boot carga el kernel que está en esa partición. RAM Disco partition table Pequeño programa Boot ROM MBR Boot Block CPU Código de boot Power ON kernel
  • 25. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 25/45 Estructuras RAID  Los sistemas de almacenamiento de disco (storage) presentan tecnologías orientadas a mejorar el servicio.  Las mejoras implementadas se basan en dar: – Confiabilidad: Casos de fallo de discos. – Performance: Lograr mejorar los tiempos de transferencia.  Las técnicas denominadas RAID (Redundant Array of Inexpensive Disks) tienen una amplia aceptación.
  • 26. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 26/45 Estructuras RAID  La confiabilidad es lograda a través de redundancia de la información.  La redundancia puede darse duplicando discos (mirror), o a través de bits de control.  La mejora de los tiempo de respuesta (performance) se logra a través de la disposición de la información en los diferentes discos.  Técnicas de striping son utilizadas a nivel de bit, byte, sectores, bloque de sectores y bloque.
  • 27. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 27/45 Estructuras RAID Controladora RAID Controladora disco Controladora disco Controladora disco Controladora disco Sistema Operativo Dame los bloques (n, n+1, …, n+k) del disco (k bloques contiguos) n n+1 n+2 n+3 dar block n dar block n+1 dar block n+2 dar block n+3 Disco Disco Disco Disco Striping
  • 28. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 28/45 Diferentes niveles de RAID  RAID 0.  RAID 1.  RAID 2.  RAID 3.  RAID 4.  RAID 5.  RAID 6.
  • 29. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 29/45 RAID 0  Un RAID 0 (stripe set o striped volume) divide los datos de forma homogénea en dos o más discos, sin información de paridad para la redundancia.  El RAID 0 no era uno de los niveles RAID originales y no proporciona redundancia de datos.  RAID 0 se utiliza normalmente para aumentar el rendimiento, aunque también se puede utilizar como una forma de crear grandes discos virtuales de un gran número de pequeñas unidades físicas.
  • 30. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 30/45 RAID 0 - Diagrama
  • 31. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 31/45 RAID 0 - Rendimiento  Si bien el tamaño del bloque técnico, pueden ser tan pequeño como un byte, es casi siempre un múltiplo del tamaño del disco duro de sector de 512 bytes.  Si los sectores accedidos se distribuyan de forma equilibrada entre las N unidades, el acceso aleatorio será N veces mas rápido.  La velocidad de transferencia de la matriz será la velocidad de transferencia de todos los discos sumados, limitado sólo por la velocidad de la controladora RAID.
  • 32. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 32/45 RAID 1  Un RAID 1 crea una copia exacta (o espejo) de un conjunto de datos en dos o más discos.  Esto es útil cuando el rendimiento de lectura o la confiabilidad son más importantes que la capacidad de almacenamiento de datos.  Este tipo de arreglo sólo puede ser tan grande como el disco más pequeño. Un clásico RAID 1 par duplicado contiene dos discos.  Puesto que cada miembro contiene una copia completa de los datos, que pueden tratarse de forma independiente, la fiabilidad es incrementada por la potencia del número de copias.  Protección eficaz contra la falla de disco físico, no contra la corrupción de datos debido a virus, cambios o eliminaciones accidentales de archivos, etc.
  • 33. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 33/45 RAID 1 - Diagrama
  • 34. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 34/45 RAID 2  Organización de corrección de errores similar al de memoria  ECC (Error Correcting Code): – Cada byte en memoria puede tener un bit de paridad – si es par ⇒ paridad 0 si impar ⇒ paridad 1 – Para corregir errores necesitamos más bits  Idea de ECC en array de discos: bx: bits de datos Disco 1 Disco 2 Disco 3 Disco 4 Disco 5 Disco 6 Disco 7 b0 b1 b2 b3 b4 b5 b6 b7 …. …. …. …. c0 c0 c1 c1 c2 c2 cx: bits de control
  • 35. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 35/45 RAID 2  División a nivel de bits  Usa código de Hamming para corrección de errores  Los discos son sincronizados por la controladora para funcionar a la vez.  No es usado por ser inaplicable en la práctica
  • 36. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 36/45 RAID 3  División a nivel de bits  Usa un disco de paridad dedicado. Usa XOR en lugar de Hamming  Una operación de lectura o escritura necesita que todos los discos funcionen a la vez  Se necesita un mínimo de 3 discos
  • 37. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 37/45 RAID 3 Disco 1 Disco 2 Disco 3 Disco 4 Disco 5 1 0 1 1 1 0 1 0 1 0 …. …. …. …. Paridad par ….
  • 38. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 38/45 RAID 3 Disco 1 Disco 2 Disco 3 Disco 4 Disco 5 1 0 1 1 1 0 1 0 1 0 …. …. …. …. …. Con los discos 1,2,4 y 5 podemos recalcular el 3
  • 39. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 39/45 RAID 4  Similar a Raid 3. Usa división a nivel de bloques  Usa un disco de paridad  Permite lecturas en paralelo pero no puede hacer pequeñas escrituras en paralelo.  Una pequeña escritura implica 2 lecturas y 2 escrituras Bloque 0 Bloque 1 Bloque 2 Bloque 3 Bloque Paridad Bloque 4 Bloque 5 Bloque 6 Bloque 7 Bloque 8 Bloque 9 Bloque 10 Bloque 11 Disco 1 Disco 2 Disco 3 Disco 4 Disco 5 Bloque Paridad Bloque Paridad
  • 40. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 40/45 RAID 5  Similar a RAID 4 pero los datos de paridad son distribuidos entre todos los discos miembros.  RAID 5 es muy popular debido a su bajo costo de redundancia.  4 unidades de 1TiB pueden construir un arreglo de 3 TiB en RAID 5. Bloque 0 Bloque 1 Bloque 2 Bloque 3 Bloque Paridad Bloque 4 Bloque 5 Bloque 6 Bloque 7 Bloque 8 Bloque 9 Bloque 10 Bloque 11 Disco 1 Disco 2 Disco 3 Disco 4 Disco 5 Bloque Paridad Bloque Paridad
  • 41. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 41/45 RAID 5  En el ejemplo, una solicitud de lectura para el bloque 0 sería servida por el disco 0.  Una solicitud de lectura simultánea para el bloque 4 tendría que esperar, pero una solicitud de lectura del bloque 1 podría ser resuelta al mismo tiempo por el disco 1 logrando mejor tiempo de respuesta.  Si falla un disco puede seguir funcionando
  • 42. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 42/45 RAID 5 – Manejo de paridad (parity handling)  Una serie de bloques simultáneos (uno en cada uno de los discos de una matriz) se le llama colectivamente una raya. Si otro bloque, o alguna parte del mismo, está escrito en esa misma franja, el bloque de paridad, o alguna parte del mismo, se vuelve a calcular y reescrito.  Para las pequeñas escrituras requiere: – Leer el bloque de datos antiguos. – Leer el bloque de paridad antiguo. – Comparar el bloque de datos antiguo con la solicitud de escritura. Por cada bit que se ha invertido (cambia de 0 a 1, o de 1 a 0) en el bloque de datos, dar la vuelta el bit correspondiente en el bloque de paridad. – Escribe el bloque de datos nuevos. – Escriba el nuevo bloque de paridad.
  • 43. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 43/45 RAID 5 – Manejo de paridad (parity handling)  Una serie de bloques simultáneos (uno en cada uno de los discos de una matriz) se le llama colectivamente una raya. Si otro bloque, o alguna parte del mismo, está escrito en esa misma franja, el bloque de paridad, o alguna parte del mismo, se vuelve a calcular y reescrito.  Para las pequeñas escrituras requiere: – Leer el bloque de datos antiguos. – Leer el bloque de paridad antiguo. – Comparar el bloque de datos antiguo con la solicitud de escritura. Por cada bit que se ha invertido (cambia de 0 a 1, o de 1 a 0) en el bloque de datos, dar la vuelta el bit correspondiente en el bloque de paridad. – Escribe el bloque de datos nuevos. – Escriba el nuevo bloque de paridad.
  • 44. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 44/45 RAID 5
  • 45. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 45/45 RAID 6  Agrega un segundo esquema de paridad al Raid 5  Ineficiente para pequeño número de discos  Protección ante fallos de 2 discos  Puede ser más adecuado que un Raid 5 + 1 disco de reserva
  • 46. Sistemas Operativos | Curso 2016 | Estructura de dispositivos masivos 46/45 RAID 0+1 y 1+0 Primero se divide, luego espejado Es un espejo de divisiones Primero espejado, luego división Es una división de espejos RAID 0+1 RAID 1+0 RAID 0+1