Upload
others
View
6
Download
0
Embed Size (px)
Citation preview
Organización de ComputadorasOrganización de ComputadorasDepto. Cs. e Ing. de la Comp.Depto. Cs. e Ing. de la Comp.Universidad Nacional del SurUniversidad Nacional del Sur
Módulo 11Módulo 11Dispositivos deDispositivos deEntrada-SalidaEntrada-Salida
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 22
CopyrightCopyrightCopyright © 2011-2019 A. G. Stankevicius
Se asegura la libertad para copiar, distribuir y modificar este documento de acuerdo a los términos de la GNU Free Documentation License, Versión 1.2 o cualquiera posterior publicada por la Free Software Foundation,sin secciones invariantes ni textos de cubierta delantera o trasera
Una copia de esta licencia está siempre disponible enla página http://www.gnu.org/copyleft/fdl.html
La versión transparente de este documento puede ser obtenida de la siguiente dirección:
http://cs.uns.edu.ar/~ags/teaching
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 33
ContenidosContenidosEl rol de los módulos de E/S
Estructura interna de un módulo de E/S
E/S programada
E/S con interrupciones
E/S con acceso directo a memoria
Almacenamiento rotacional y de estado sólido
Niveles de RAID
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 44
Dispositivos de E/SDispositivos de E/S
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 55
Módulos de E/SMódulos de E/SCada módulo de E/S se conecta al busdel sistema y controla uno o más dispositivos
Los módulos de E/S no son sólo un conjuntode pines y conectores, contienen en realidaduna cierta “inteligencia”, como para podercomunicar al dispositivo con la computadora
Si tenemos en cuenta que existe una amplia variedad de dispositivos, cada uno con su método particular de interacción, no es nada práctico tener que incorporar toda esa lógicaen el propio procesador
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 66
Módulos de E/SMódulos de E/SMás aún, como la tasa de transferenciade datos de los dispositivos es bastantemenor que la de acceso a la memoria ola de procesamiento del propio procesador, tampoco resulta práctico hacer uso del veloz bus del sistema para comunicarse de manera directa con los dispositivos
Por último, los dispositivos pueden emplear formatos de datos y/o longitudes de palabra diferentes a los adoptados por la computadora
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 77
Módulos de E/SMódulos de E/STodas estas razones justifican la incorporación de los módulos de E/S
Se impone entonces la siguiente pregunta:¿qué constituye un módulo de E/S
Un módulo de E/S es una interfaz que brindaacceso al CPU y/o a la memoria principal,a partir de la utilización del bus de sistema oen ocasiones de un conmutador central
Un mismo módulo de E/S puede servir de interfaza uno o más dispositivos
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 88
Módulos de E/SMódulos de E/S
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 99
Taxonomía de dispositivosTaxonomía de dispositivosLos dispositivos externos se pueden clasificar de la siguiente manera:
De interacción con humanos: posibilitanla comunicación con el usuario de la computadora,(por caso, el monitor, el teclado, etc.)
De interacción con máquinas: posibilitanla comunicación con otros componentesde la computadora (por caso, discos rígidos,lectoras de CDs y DVDs, etc.)
De comunicación: posibilitan la comunicacióncon dispositivos remotos (por caso, placas de red)
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 1010
Estructura de un móduloEstructura de un módulo
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 1111
Estructura de un móduloEstructura de un móduloUn módulo genérico está constituido porlos siguiente componentes:
Las señales de control, las cuales determinanla acción que llevará a cabo el dispositivo(por caso, enviar o recibir información, etc.)
Los bits de datos, esto es, el conjunto de bits a ser enviados/recibidos hacia/desde el módulo de E/S
Las señales de estado, las cuales indican el estadodel dispositivo (por caso, READY o BUSY)
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 1212
Estructura de un móduloEstructura de un móduloContinúa:
La lógica de control asociada al dispositivo, la cual controla la operación del dispositivo en respuestaa las directivas del módulo de E/S
El transductor, el cual convierte los datos binariosen formato eléctrico a otros formatos durante la salida y de los otros formatos a la forma binaria eléctrica durante la entrada
El buffer asociado al transductor, el cual mantienede manera temporaria los datos que se están enviando/recibiendo hasta que sean procesados
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 1313
Dispositivos y sus velocidadesDispositivos y sus velocidades
http://en.wikipedia.org/wiki/List_of_device_bit_rates
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 1414
ResponsabilidadesResponsabilidadesLas principales funciones y tareas de las cuales todo módulo de E/S debe hacerse cargo sonlas siguientes:
Control y temporizado
Comunicación con el procesador
Comunicación con los dispositivos
Almacenamiento temporario de datos (buffering)
Detección de errores
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 1515
ResponsabilidadesResponsabilidadesUn módulo de E/S puede resultar transparente o no al CPU, en función de si oculta o bien revela las características de los dispositivosa los cuales brinda acceso
De manera análoga, un módulo de E/S puede hacerse cargo del control del funcionamiento del dispositivo, o bien delegar esa responsabilidad en el propio CPU
Al módulo de E/S también a veces se lo conoce como canal de E/S o procesador de E/S
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 1616
Operación prototípicaOperación prototípicaLa transferencia de datos desde un dispositivo externo podría involucrar los siguientes pasos:
El procesador interroga al módulo de E/S para comprobar el estado del dispositivo
El módulo de E/S señaliza el estado del dispositivo
Si el dispositivo está preparado para transmitir,el procesador solicita la transferencia de datos
El módulo de E/S obtiene los datos del dispositivo
Los datos son puestos por el módulo de E/S a disposición del procesador
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 1717
E/S programadaE/S programadaSi algo se le puede criticar a esta operatoriaes que el CPU parece quedar en todo momento atado al dispositivo de E/S
Si la velocidad del dispositivo es inferior ala del procesador, estaremos desperdiciando capacidad de cómputo al quedar a la espera de queel dispositivo termine de resolver la última solicitud
Este tipo de implementación se la denominaE/S programada, ya que el procesador ejecutaun programa que controla directamenteal módulo de E/S (y por ende al dispositivo)
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 1818
E/S programadaE/S programadaBajo esta modalidad de entrada/salida,el procesador realiza las siguientes tareas:
Sensa el estado del módulo
Envía los comandos de lectura/escritura
Transfiere desde/hacia el módulo los datos
El procesador, al estar supervisando la tarea, debe esperar a que módulo y dispositivo completen el último requerimiento
Se dice que el procesador realiza un “busy waiting” (es decir, una “espera ocupada”).
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 1919
E/S programadaE/S programadaAnalicemos en detalle la implementaciónde la operatoria “busy waiting”:
El CPU solicita una operación de E/S
El módulo de E/S efectúa la operación
El módulo de E/S activa los bitsde estado de manera acorde
El CPU monitorea periódicamenteesos bits de estado
El módulo de E/S no puede informaral CPU de forma directa. (¿por qué?)
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 2020
Comandos de entrada/salidaComandos de entrada/salidaEl CPU para enviar un comando de E/S aun cierto módulo debe suministrar su dirección
Esta dirección identifica unívocamente al módulode E/S (y al dispositivo en caso de haber más de uno)
Una vez identificado, el CPU envía el comando
Puede ser de control, indicándole al módulo qué hacer (por caso, encender el láser de una grabadora), o bien una consulta acerca del estado (por caso, se produjo algún error al realizar la última orden), o si no, una orden de lectura/escritura, instruyendo al móduloque transfiera los datos del buffer al dispositivo
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 2121
Direccionamiento de dispositivosDireccionamiento de dispositivosBajo una E/S programada la transferenciade datos es muy parecida a un accesos a memoria: las instrucciones de E/S que el procesador trae de memoria durante su ciclo básico de ejecución se van mapeando en comandos de E/S
Cada dispositivo cuenta con un identificador único
Los instrucciones del CPU contienen ese identificador como argumento (el cual en esencia es una dirección de memoria)
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 2222
Direccionamiento de dispositivosDireccionamiento de dispositivosA la hora de direccionar a un dispositivo de E/S, se han ensayado principalmente dos variantes
Una posibilidad es hacer uso de una E/S mapeada en memoria principal, es decir,que los dispositivos y la memoria compartanel mismo espacio de direccionamiento
La E/S es indistinguible de un acceso convencionala memoria (por caso, la E/S en la OCUNS)
Como ventaja esto implica que no hace falta contar con instrucciones especiales para E/S
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 2323
Direccionamiento de dispositivosDireccionamiento de dispositivosLa segunda alternativa consiste en aislarel espacio de direccionamiento para E/S
En otras palabras, el espacio de direccionamientode la memoria principal es independiente del espaciode direccionamiento de los dispositivos de E/S
Nótese que esto implica contar con líneas adicionales (es decir, más pines en el CPU) para poder hacer referencia a esos objetos
A su vez, hace falta contar con instrucciones específicas para E/S, distintas de las anterioresde acceso a memoria
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 2424
EjemploEjemplo
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 2525
Concepto de interrupciónConcepto de interrupciónLa interrupción es un mecanismo que permite indicarle al procesador que se produjoun evento que requiere atención inmediata
Para poder atender este evento es necesario interrumpir la ejecución del programa en curso
El estado del programa en ejecución debe ser guardado para poder ser retomado posteriormente
Al producirse una interrupción se ejecuta usualmente un pequeño programa de propósito específico ala interrupción actual denominado manejadorde la interrupción (interruption handler)
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 2626
Concepto de interrupciónConcepto de interrupciónLas interrupciones fueron concebidas para atender principalmente excepción aritméticasy señalizar eventos de tiempo real
Con el paso del tiempo, la alta flexibilidadque brinda este mecanismo permitió quese lo aplique a otras situaciones, tales como:
Comunicación con dispositivos de E/S
Invocación de servicios del sistema operativo
Resolución de los faltantes de páginas (page faults)
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 2727
TaxonomíaTaxonomíaLas interrupciones se pueden clasificarde acuerdo a las siguientes dimensiones:
Sincrónicas vs. asincrónicas
Solicitadas por el usuario vs. forzadas
Enmascarables vs. no enmascarables
Entre instrucciones vs. intra-instrucciones
Recuperable vs. insalvable
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 2828
Atención de una interrupciónAtención de una interrupciónA continuación repasaremos los pasos que se llevan adelante para atender una interrupción generada por un dispositivo de E/S:
1) Un cierto dispositivo señaliza un interrupción
2) El procesador finaliza la ejecución de la instrucción en curso (esto hace más fácil guardar el contexto)
3) El procesador antes de ejecutar la próxima instrucción revisa si se produjo una interrupción;al detectar que hubo una, envía una señal de ACKal dispositivo para informarle que ya puede bajarla señal de interrupción
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 2929
Atención de una interrupciónAtención de una interrupciónContinúa:
4) El procesador se prepara para transferir el controlal manejador; para esto guarda en la pila del sistemala palabra de estado del procesador y la direcciónde la próxima instrucción a ser ejecutada
5) Apelando al mecanismo del cual se disponga en la arquitectura, se determina la dirección de comienzo de la rutina que manejará la interrupción
6) Esta rutina suele comenzar por guardar en la piladel sistema los distintos registros que van a ser modificados durante la atención de la interrupción
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 3030
Atención de una interrupciónAtención de una interrupciónContinúa:
7) El manejador lleva adelante todas las accionesque requiera para completar la atenciónde la interrupción en curso
8) Al terminar la atención de la interrupción, se procede a restaurar los valores de los registros que fueran oportunamente guardados en la pila del sistema
9) Finalmente, se restaura la palabra de estado del procesador y la dirección de la próxima instruccióna ser ejecutada (es decir, continua la ejecucióndel programa interrumpido al principio)
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 3131
E/S con interrupcionesE/S con interrupcionesLa E/S con interrupciones fue concebidacomo una alternativa superadora ala E/S programada
La clave de este tipo de E/S consiste en evitarque el CPU entre en el “busy waiting”
A tal efecto, la idea es que el CPU envíe un comando de E/S para inmediatamente dedicarse a atender otros asuntos y recién cuando el comando de E/S finalice su ejecución se interrumpirá al CPU para anoticiarlo de la novedad
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 3232
E/S con interrupcionesE/S con interrupcionesLa operatoria básica de una E/S con interrupciones abarca las siguientes etapas:
El CPU envía un comando, por caso un READ
El módulo de E/S procede a leer los datos desdeel dispositivo mientras el CPU atiende otros asuntos
Una vez finalizada la operación, el módulo de E/S interrumpe al CPU
El CPU solicita los datos obtenidos del dispositivo
El módulo de E/S finalmente pone a disposicióndel procesador estos datos
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 3333
E/S con interrupcionesE/S con interrupcionesLa E/S con interrupciones constituye sin duda una mejora por sobre la E/S programada
El CPU no está más “atado” al dispositivo de E/S, ya que entre el envío de un comando y la recepción de los datos queda libre para atender a otros procesos
No obstante, el CPU sigue interviniendo enla transferencia de la totalidad de los bytes enviados/recibidos
Más aún, cada vez que se interrumpe al CPU se debe llevar adelante un costoso cambio de contexto
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 3434
E/S con interrupcionesE/S con interrupcionesLa implementación de la E/S con interrupciones plantea un conjunto de desafíos específicos:
¿Cómo identificar qué módulo de E/S produjola interrupción?
¿Cómo se debe actuar ante la presenciade interrupciones simultáneas?
¿Cómo se debe actuar ante la presencia de interrupciones anidadas? (esto es, que se produzca una nueva interrupción mientras todavía se está atendiendo a la anterior)
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 3535
¿Quién interrumpió¿Quién interrumpió??Para determinar qué modulo interrumpió al CPU se puede hacer uso de múltiples señalesde interrupción, una para cada dispositivo
Claro está, la cantidad de señales que entran y salen del CPU están acotadas, por ende, esta técnicasólo permitiría usar una cantidad limitadade dispositivos
Otra posibilidad es hacer polling (interrogación), es decir que el CPU consulte a los módulosde E/S en un determinado orden hastadar con el que produjo la interrupción
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 3636
¿Quién interrumpió¿Quién interrumpió??Una alternativa más eficiente es hacer uso dela técnica daisy chain (“corona de margaritas”, o también “conexión encadenada”)
Los módulos de E/S comparten una línea comúnpara solicitar interrupciones
La línea de reconocimiento (ACK) se conecta encadenando los módulos
El módulo que interrumpe debe poner su vectoren el bus del sistema
El CPU usa este vector para identificar al dispositivo que produjo la interrupción
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 3737
¿Quién interrumpió¿Quién interrumpió??
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 3838
¿Quién interrumpió¿Quién interrumpió??Finalmente, otra posibilidad para identificaral módulo de E/S que produjo la interrupciónes hacer uso de la técnica de bus master (arbitraje del bus)
El módulo de E/S que desea interrumpir al CPU debe primero reclamar como suyo al bus antes de poder levantar la señal de interrupción (por ende, no habrá duda acerca de quién fue el que interrumpió)
Esta política es utilizada de manera satisfactoria porla tecnología para bus de sistema denominada PCIy su evolución PCI-Express
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 3939
Interrupciones simultáneasInterrupciones simultáneasLa otra cuestión que resta resolver es qué hacer cuando se produzcan más de una interrupción en simultáneo
Existen dos alternativas, a saber:
Se puede resolver la aparición de una interrupciónen simultáneo apelando a prioridades a nivelde hardware o de software
Alternativamente, se puede impedir que se produzca la interrupción en simultáneo
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 4040
Interrupciones simultáneasInterrupciones simultáneasUn ejemplo de la primera política es quecada línea de interrupción tenga asociadauna prioridad
La idea es que las líneas de mayor prioridadse atiendan antes que las de menor prioridad
En caso de usar polling, la interrupciónen simultáneo queda resuelta a partirdel ordenamiento impuesto por el indagado
Es decir, se resuelve vía software
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 4141
Interrupciones simultáneasInterrupciones simultáneasOtra posibilidad es usar daisy-chaining, resolviendo la interrupción en simultáneoa partir del encadenado de los dispositivos
Es decir, se resuelve vía hardware
Finalmente, un ejemplo de la segunda política es usar la técnica de bus master, dónde únicamente el módulo que se adueñedel bus podrá interrumpir
En otras palabras, es imposible que se produzcan interrupciones en simultáneo
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 4242
E/S con DMAE/S con DMALa E/S con interrupciones parece mejorarel desempeño por sobre la E/S programada,si bien también se paga un costo oculto:
La E/S programada alcanza una elevada tasade transferencia a instancias de mantener cautivoal CPU, el cual no podrá atender otros requerimientos
La E/S con interrupciones libera al procesadorde ese uso exclusivo, pero sacrificando parte dela tasa de transferencia, pues cada byte leído tiene que pasar por las manos del CPU, lo que a su vezrequiere de un costoso cambio de contexto
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 4343
E/S con DMAE/S con DMAPara capitalizar lo mejor de los dos escenarios se concibió la técnica de E/S con DMA (Direct Memory Access)
Esta técnica consiste en agregar un módulo DMAal bus del sistema el cual asume la responsabilidadde gestionar la E/S
Este módulo debe usar el bus sólo cuando el CPUno lo esté usando o bien debe forzar al CPU aque difiera temporalmente su uso
Esta última variante es la más frecuente y sela denomina cycle stealing (robo de ciclos)
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 4444
Diagrama del módulo DMADiagrama del módulo DMASy
stem
I/O
Mem
ory
Bu
s
Memory & I/O
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 4545
Operatoria del módulo DMAOperatoria del módulo DMAEl CPU informa al módulo DMA:
Tipo de operación (READ/WRITE)
Dirección del dispositivo
Dirección de memoria de comienzo
Cantidad de información a transferir
Luego, el CPU trabaja en otra cosa
El módulo DMA se encarga de la transferencia(una palabra a la vez) desde o hacia memoria
Por último, el módulo DMA interrumpe al CPU
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 4646
Robo de ciclosRobo de ciclosPara transferir cada dato, el módulo DMA debe tomar el bus por un ciclo
Transfiere de a una palabra por vez
No se trata de una interrupción:
El CPU no hace cambio de contexto, etc.
El CPU se suspende justo antes de acceder al bus
Si bien esto ralentiza al CPU, no lo es tanto como cuando está a cargo de la E/S (esto es, bajo la E/S programa o con interrupciones)
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 4747
Canales de E/SCanales de E/SLos dispositivos de E/S son cada vez más sofisticados y requieren mayores tasasde transferencia
La E/S con DMA parece ser la solución más adecuada, si bien el procesador todavía debe ser interrumpido una vez por cada bloquede datos transferido (al finalizar la misma)
Para poder mejorar el desempeño de la E/Scon DMA sólo resta hacer uso de procesadores de E/S de propósito específico
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 4848
Canales de E/SCanales de E/SLos canales de E/S cuentan con la capacidadde ejecutar instrucciones de E/S
También se los conocen como procesadores de E/S
Los canales de E/S cuentan con un control completo sobre las operaciones de E/S
Por ejemplo, controladoras de video 3D
La intención es que el CPU instruya al canalde E/S para hacer una transferencia y el canal de E/S realice la totalidad de la misma
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 4949
Almacenamiento rotativoAlmacenamiento rotativoEl almacenamiento rotativo ha sido desdelos albores de la computación la tecnologíade memoria secundaria por excelencia
Es lo que conocemos vulgarmente como disco rígido,o también como HDD (Hard Disk Drive)
Está compuesto por uno o más superficies circulares denominadas platos los cuales giran a alta velocidad
Cuenta con múltiples cabezas de lecto-escritura,usualmente una para cada cara de los platos
La información se almacena en pistas circulares concéntricas
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 5050
Discos rígidosDiscos rígidos
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 5151
Discos rígidosDiscos rígidosEl disco rígido es un medio de almacenamiento de información electromagnético
Los platos están recubiertos de un fino sustrato ferromagnético, al estilo del utilizado en los viejoscassettes de audio y en los disquettes flexibles
El cabezal de lecto-escritura magnetiza el sustratoen distintas direcciones en función de si se está almacenando un cero o un uno
Para leer la información almacenada se procedeen sentido inverso, el cabezal va detectandoel cambio en la dirección de la magnetización
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 5252
Discos rígidosDiscos rígidosParámetros a tener en cuenta al elegirun disco rígido:
Costo
Capacidad
Desempeño
El costo de un disco rígido resulta directamente proporcional a los otros dos parámetros
Evidentemente un rígido de más tamaño tendráun mayor costo, lo mismo uno de mejor desempeño
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 5353
Discos rígidosDiscos rígidosCon respecto a la capacidad, existen varios factores que afectan a este parámetro:
Tamaño de los platos: los platos vienen en múltiples tamaños, desde 8”, pasando por 5¼” y 3½”, hastalos mas pequeños, aptos para notebooks, de 2½”
Cantidad de platos: se puede incrementarla capacidad de un disco rígido incorporando platos adicionales, lo cual incurrirá en un costo adicional
Densidad de la información: al disminuir la distancia entre los bits almacenados es posible aumentarla cantidad de información
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 5454
Discos rígidosDiscos rígidosCon el objeto de incrementar la densidad dela información es necesario que el cabezalesté lo más cerca posible del plato
El disco rígido saca provecho de la corriente de aire que genera la rotación del plato, dejando quela cabeza flote a escasos 3 nanómetros del plato
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 5555
Discos rígidosDiscos rígidosFinalmente, también hay varios aspectos para tener en cuenta en relación al desempeño:
Tiempo promedio de búsqueda (seek time): esel tiempo que le toma al disco posicionar el cabezalen la pista conteniendo la información buscada
Tiempo promedio de latencia rotacional: esel tiempo que le toma al disco desde que el cabezal se posiciona en la pista correcta hasta que el dato deseado pasa por debajo del mismo
Tiempo de transferencia: es el tiempo que insumela transferencia de la información propiamente dicha
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 5656
Discos rígidosDiscos rígidosEl tiempo promedio de búsqueda se ve afectado por los siguientes factores:
Tecnología del disco: distintos factores tecnológicos como el peso del cabezal o la potencia del motorque mueve al brazo actuador también afectanel tiempo promedio de búsqueda
Cantidad de platos: a menor cantidad de platos, menos cabezales y por ende el brazo actuadorresulta más liviano y más ágil
Tamaño de los platos: a menor tamaño de platoel cabezal debe recorrer menor distancia
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 5757
Discos rígidosDiscos rígidosEl tiempo promedio de latencia rotacional se ve afectado por los siguientes factores:
Velocidad de rotación de los platos: cuanto más rápido gire el plato más rápido llegará la información a posicionarse bajo el cabezal de lecto/escritura
Organización de la información en cada pista:la técnica de interleaving posibilita optimizarel acceso secuencial a la información contenidaen una pista de forma que una vez concluidala lectura de una parte la siguiente justose posicione debajo del cabezal
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 5858
Discos rígidosDiscos rígidosEl tiempo de transferencia de la información depende de los siguientes factores:
Velocidad de rotación de los platos: a mayor velocidad de rotación, más rápidamente pasa la informaciónpor debajo del cabezal
Densidad de la información: si la información está almacenada de manera más compacta, a una misma velocidad de rotación se logra mejorar la tasade transferencia
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 5959
Tiempo de acceso promedioTiempo de acceso promedioEn síntesis, el tiempo de acceso promedio es:
Taccess
= Tseek
+ Tlatency
+ Ttransfer
Tseek
mide el tiempo que le toma al cabezal para recorrer la mitad de las pistas
Tlatency
mide el tiempo que le toma a un platoen dar media vuelta
Ttransfer
mide el tiempo que tarda el cabezal en leerla cantidad mínima de información (un sector)
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 6060
Tiempo de acceso promedioTiempo de acceso promedioLos discos rígidos apelan a otras técnicas adicionales para mejorar su desempeño promedio:
Hacen uso de un almacenamiento intermedio tipo memoria cache, posibilitando cancelar en parteel impacto del retardo de búsqueda y de la latencia rotacional. A mayor cantidad de cache, mejor desempeño promedio
También suelen implementar alguna técnica de preposicionamiento, con el objeto de anticiparseal próximo requerimiento por parte del procesador
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 6161
Organización físicaOrganización físicaLa organización física de la informaciónen un disco rígido responde a su estructura:
La información se almacena en un conjunto de pistas, ubicadas en las distintas caras de los platos
Cada pista contiene una cantidad variablede sectores, con las pistas exteriores almacenandomás sectores que las interiores
Cada sector solía almacenar exactamente 512 bytes, si bien en la actualidad se ha migrando haciaun tamaño de sector mayor (4096 bytes)
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 6262
Organización lógicaOrganización lógicaLa organización lógica de la información estandariza el acceso al contenido:
La técnica LBA (Logical Block Addressing) permite acceder al conjunto de sectores que componenun cierto disco rígido sin conocer su geometría(esto es, su configuración en platos, pistas y sectores)
El conjunto de sectores se direcciona como sise tratara de un arreglo, dejando que la electrónicainterna al disco se encargue de traducir estas referencias lineales en las correspondientes referencias tridimensionales
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 6363
Discos de estado sólidoDiscos de estado sólidoEn los últimos años el nivel de integración de las memorias de tipo flash ha permitido que éstas alcancen en capacidad a los discos rígidos
En consecuencia, comenzaron a apareceren el mercado los denominados discosde estado sólido (SSD)
Un SSD se asemeja externamente a un disco rígido convencional, pero internamente se asemeja mása un pendrive o incluso a una memoria RAM persistente
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 6464
Discos de estado sólidoDiscos de estado sólido
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 6565
Discos de estado sólidoDiscos de estado sólidoVentajas de los SSDs:
Al no contar con partes móviles, se elimina el tiempo de búsqueda y la latencia rotacional, redundando en una mejora notable del tiempo de acceso promedio
Por esta misma razón reducen significativamenteel consumo de electricidad, lo que implica un mayor tiempo de vida de la batería en las portátiles
Generan menos calor dentro de la computadora
Toleran mucho mejor los golpes, ya que no cuentacon múltiples cabezales flotando en proximidada la superficie de uno o más platos
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 6666
Discos de estado sólidoDiscos de estado sólidoVentajas de los SSDs:
Resultan inmunes a la fragmentación, un problema que acucia a la mayoría de los sistemas de archivos
Son absolutamente silenciosos. Es increíble el nivelde contaminación sonora producto de los discos rígidos con el que convivimos a diario
La ausencia de partes móviles también los torna inmunes a las fallas mecánicas, es decir, este tipode almacenamiento parecería ser más confiable
La información almacenada no se altera en presencia de campos magnéticos
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 6767
Discos de estado sólidoDiscos de estado sólidoDesventajas de los SSDs:
El costo por terabyte es superior (alrededor de tres veces más caro, unos $40 contra $120 por TB)
En consecuencia, la capacidad de estos discos puede ser más escasa que en los discos convencionales
Las escrituras son en bloque, es decir, no se puede alterar sólo un bit o sólo un byte, por lo que resultan más lentas que las lecturas
Finalmente, cada bloque de datos puede ser reescrito una cantidad acotada de veces (de 3.000 a 100.000 veces), luego de lo cual el bloque no se borra más
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 6868
Discos híbridosDiscos híbridosRecientemente apareció un tercer tipo de dispositivo de almacenamiento: el dísco híbrido
También se lo conoce como SSHD por su sigla en inglés, Solid State Hybrid Drive
Un disco híbrido está mitad de camino entre los SSD y los HDD: se trata de un disco convencional complementado por una cache muy generosa implementada con una memoria flash
Naturalmente, tanto costo como desempeño estarána mitad de camino
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 6969
RAIDRAIDComo vimos la mejora en los mecanismosde E/S no siempre se ve acompañada deuna mejora en la tecnología de los dispositivos
En este sentido, una técnica que permite mejorar el desempeño de los dispositivosde almacenamiento es la técnica de RAID (Redundant Array of Independent Disks)
La clave radica en combinar múltiples discos haciendo uso de adecuados canales de E/S con el objetode mejorar los parámetros de desempeño
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 7070
RAIDRAIDExisten siete variantes de esta técnica, cada una con sus propias características:
RAID 0 (striping de bloque sin paridad)
RAID 1 (mirroring)
RAID 2 (striping de bit con paridad tipo Hamming)
RAID 3 (striping de bytes con paridad dedicada)
RAID 4 (striping de bloques con paridad dedicada)
RAID 5 (striping de bloques con paridad distribuida)
RAID 6 (striping de bloques con doble paridad)
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 7171
RAIDRAIDTodos los esquemas de RAID compartenun conjunto de características en común:
Las unidades físicas son consideradas por el sistema operativo como una única unidad lógica
Los bits de los datos se distribuyen a través delas distintas unidades físicas
En los discos redundantes se almacena informaciónde paridad la cual posibilita la recuperación de datos ante alguna falla
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 7272
RAID 0RAID 0Características:
No maneja redundancia (se puede argumentarque no califica como un esquema RAID)
Los datos son organizados en tiras de datos (stripes)a través de los discos disponibles (stripe set)
Este esquema disminuye el tiempo de acceso promedio, pues ante cada acceso se está aprovechando la tasa de transferenciade múltiples canales, de haberlos
Permite usar la totalidad del espacio disponible inicialmente
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 7373
RAID 0RAID 0
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 7474
RAID 1RAID 1Características:
La idea es que múltiples discos contenganuna imagen especular de los datos almacenados
Los datos deben ser escritos en todos los discos,si bien las lecturas se pueden resolver a partirde cualquiera de ellos
La recuperación ante fallos es simple, si una unidad falla se puede continuar trabajando con las restantes
Para n discos, permite usar a lo sumo 1 / ndel espacio disponible inicialmente
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 7575
RAID 2RAID 2Características:
Los discos deben operar sincronizados (esto es, consus cabezales de lecto-escritura en la misma pista)
Los datos se almacenan en cadenas muy cortas (incluso de a un byte o de a una palabra)
Se hace uso de varios discos de paridad, los cuales almacenan un código Hamming de los datos
Es el único esquema que actualmente no se utiliza
Permite alcanzar altas tasas de lectura, análogasa las observadas bajo RAID 0
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 7676
RAID 0, 1 y 2RAID 0, 1 y 2
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 7777
RAID 3RAID 3Características:
En líneas generales es análogo a RAID 2
Utiliza un único disco redundante
En lugar de usar Hamming, utiliza bits de paridad calculados sobre los bits que ocupan la misma posición de todos los discos
En caso de fallar algún disco, se accede ala información faltante usando los bits de paridad
No permite resolver pedidos simultáneos, pues cada operación requiera actividad en todos los discos
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 7878
RAID 4RAID 4Características:
Permite el acceso independiente a los discos
Las peticiones de E/S se atienden en paralelo
Hace uso de tiras de mayor tamaño
Se calcula la paridad a partir de los bits de una tiraen cada disco y se almacena en la correspondiente tira en el disco de paridad
Una escritura de un dato en una tira implica dos lecturas (tira de datos y paridad anterior) y dos escrituras (tira de datos y paridad nueva)
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 7979
RAID 3 y 4RAID 3 y 4
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 8080
RAID 5RAID 5Características:
Análogo a RAID 4, excepto que los bits de paridadse distribuyen en todos los discos disponibles(es decir, no usa un disco exclusivo para paridad)
Evita el cuello de botella que representa el disco conteniendo la paridad bajo RAID 4
En la actualidad es el esquema RAID más popular (tanto en a nivel de software como de hardware)
Al igual que bajo RAID 0, se puede hacer usode discos de distinto tamaño
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 8181
RAID 6RAID 6Características:
Análogo a RAID 5
Utiliza dos bits de paridad, calculados por funciones distintas, almacenados en discos distintos (es decir, extiende a RAID 5 agregando otro bit de paridad)
Por ende, requiere de dos discos redundantes
Como particularidad es el único esquema que permite la recuperación de los datos aún cuando se produzca un segundo fallo durante el proceso de recuperación (este proceso de recuperación es producto de un fallo anterior al segundo fallo)
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 8282
RAID 5 y 6RAID 5 y 6
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 8383
RAID anidadoRAID anidadoLa técnica de RAID se puede anidar, aplicando una capa de RAID sobre otra capa de RAID
Por caso, el esquema RAID 10 (también llamado esquema RAID 1+0) implementa RAID 1 sobre múltiples arreglos de discos los que a su vez implementan RAID 0
Análogamente se puede concebir el esquemaRAID 0+1 (el cual no se lo denomina RAID 01para evitar las confusiones con el RAID 1) oel esquema RAID 5+0
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 8484
¿¿Querés más?Querés más?Avances recientes:
La técnica de NAS (Network Attached Storage) surgió como respuesta a las limitaciones del acercamiento tradicional DAS (Direct-attached Storage)
Recientemente, la técnica de SAN (Storage Area Network) posibilitó tener acceso directo a cantidades ilimitadas de almacenamiento, sin pasar por un intermediario, como era el caso bajo NAS
Esta técnica se combina a la perfección con el advenimiento de la virtualización a todo nivelen las granjas de servidores
Organización de Computadoras - Mg. A. G. StankeviciusOrganización de Computadoras - Mg. A. G. Stankevicius 8585
¿¿Preguntas?Preguntas?