6. Entrada y Salida 6.1. El subsistema de E/S ¿Qué es E/S en un

Anuncio
6. Entrada y Salida
Explicación de la interfaz entre el computador y el mundo exterior.
6.1. El subsistema de E/S
¿Qué es E/S en un sistema computador?
Aspectos en el diseño del subsistema de E/S: localización de
los datos, transferencia de los datos y sincronización.
Estandarización de las interfaces de E/S; formas de
sincronización: E/S programada, interrupciones de E/S y
acceso directo a memoria.
Estructuras del bus de E/S: conexión procesador-interfase E/S.
1 / 16
6.2. E/S programada
El procesador inicia y controla cuando finaliza la operación de
E/S.
6.3. Interrupciones de E/S
El procesador inicia la operación de E/S y el dispositivo lo
interrumpe cuando termina.
6.4. Acceso directo a memoria (DMA)
El dispositivo lee y escribe directamente en memoria.
2 / 16
6. Entrada y Salida
6.1. El subsistema de E/S
¿Qué es E/S en un sistema computador?
Un teclado es un dispositivo de entrada, una impresora de
salida.
Un disco también: la información pasa por un subsistema de E/S
que conecta el procesador y la memoria con los dispositivos.
Estos dispositivos tienen características físicas muy diferentes,
sobre todo con lo que respecte a la velocidad de transferencia
y al tiempo de acceso.
3 / 16
El subsistema de E/S maneja comunicaciones que son
asíncronas respecto a la CPU y que varían mucho en la
cantidad de datos:
- El procesador y la memoria funcionan en un mundo artificial
regulado completamente por el reloj.
- En los dispositivos de entrada la información se genera en
cualquier momento.
Estudiaremos las interfaces de E/S que soportan los
requerimientos de transmisión de datos de los distintos
periféricos.
4 / 16
Aspectos en el diseño del subsistema de E/S:
(1) Localización de los datos: selección del dispositivo,
dirección de los datos dentro del dispositivo.
(2) Transferencia de los datos: cantidad de datos, velocidad
de transmisión y sentido de la transferencia (entrada y/o
salida).
(3) Sincronización: salida de datos cuando el dispositivo esté
preparado para recibirlos, entrada cuando los datos estén
disponibles.
5 / 16
Diferentes con respecto a la transferencia de datos entre el
procesador y la memoria:
(1) Memoria: localización = dirección entera sin signo; E/S: 1º
hay que especificar el dispositivo, y según el tipo, la
localización puede ser tan compleja como un plato, pista y
sector en un disco.
(2) Cantidad de datos: memoria: byte, media palabra, palabra y
doble palabra; E/S: varía desde 1 bit para un clic con el
ratón hasta 4096 para un bloque de disco.
(3) Donde realmente son diferentes.
6 / 16
Fig. 8.1, una petición a disco puede demorarse 20 ms (~106
ciclos del procesador), antes de empezar a transmitir 4096
bytes a una tasa de transferencia de un byte cada pocos ciclos
de reloj.
Tanto la demora, latencia, como la tasa de transferencia, ancho
de banda, son independientes del reloj del procesador, viniendo
determinados por el movimiento de elementos mecánicos.
7 / 16
Este ancho de banda se llama punta, el número de bytes por
segundo trasferidos desde que comienza la transmisión. El
ancho de banda medio, que incluye el tiempo de latencia, es
mucho menor.
Ejemplo: Se lee un bloque de datos de 4 Kbytes desde un disco.
¿Cuál es el ancho de banda medio de la transmisión si el disco
tiene una latencia de 9ms, y un ancho de banda punta de 1
Mbyte por segundo?
8 / 16
Estandarización de las interfaces de E/S
Las 3 características de una transferencia de datos de E/S
dependen del tipo de dispositivo.
Para conseguir cierta estandarización se utilizan las interfaces
de E/S, cuya función principal es armonizar la velocidad y el
protocolo del bus del procesador con los requerimientos del
dispositivo.
Desde el punto de vista de la CPU y del dispositivo de E/S, la
interfase del dispositivo consiste en un conjunto de registros de
datos y de control en el espacio de direcciones de E/S.
9 / 16
Figura 8.4: Estructura de la interfase de un dispositivo de E/S.
10 / 16
Se usan diferentes formas de sincronización para diferentes
rangos de velocidad de los dispositivos:
(1) E/S programada: un bit en un registro de salida indica al
dispositivo que comience una operación determinada, y un
bit en un registro de entrada indica al procesador la
finalización de la operación.
Es suficiente cuando el dispositivo ni es demasiado rápido
para que el procesador lea y escriba los bits indicadores ni
es demasiado lento para que el procesador espere por él.
Las impresoras están en esta categoría.
11 / 16
(2) E/S por interrupción: el procesador inicia la operación de
E/S y el dispositivo interrumpe al procesador cuando está
listo para transferir datos.
Necesaria cuando los tiempos de latencia son largos y
variables. Las conexiones de red estarían en esta categoría.
(3) Acceso directo a memoria (DMA): permitir al dispositivo de
E/S leer y escribir en memoria directamente, sin usar el
procesador.
Necesaria para anchos de bada pico grande. Los discos
duros estarían en esta categoría.
12 / 16
Estructuras del bus de E/S
Hemos reducido los tres requerimientos de localización,
transferencia de datos y sincronización a mover información de
control y datos a y desde registros de E/S desde y a registros del
procesador.
Nos centramos entonces en el bus de conexión entre el
procesador y los registros del dispositivo de E/S.
Se comporta como un bus de memoria: especificación de la
operación, lectura o escritura, y de la fuente o destino de la
misma.
13 / 16
Puede diferenciarse en la temporización y la sincronización, o
puede dejarse esas diferencias a las interfaces de E/S.
Diferentes computadores tienen distintos grados de separación
entre la transmisión de datos de E/S y de memoria:
14 / 16
(1) E/S aislada: subbuses de dirección, datos y control
separados.
(2) E/S compartida: en común los subbuses de datos y
direcciones.
(3) E/S mapeada en memoria: se utiliza un solo bus para E/S
y memoria. Un rango de direcciones de memoria se reserva
para los registros de E/S, y estos registros son leídos y
escritos utilizando las instrucciones estándar de carga y
almacenamiento.
Se utiliza en la mayoría de los procesadores modernos.
15 / 16
Fig. 8.3 muestra el espacio de direcciones de un sistema con E/S
mapeada en memoria.
16 / 16
Descargar