martes, 28 de mayo de 2013

4.4 Operaciones de Entrada /salida


Los pasos a seguir en una operación de E/S con DMA( Direct Memory Access) son los siguientes:
1. Programación de la operación de E/S. Se indica al controlador la operación, los datos a transferir y la dirección de memoria sobre la que se efectuará la operación.
2. El controlador contesta aceptando la petición de E/S.
3. El controlador le ordena al dispositivo que lea (para operación de lectura) una cierta cantidad de datos desde una posición determinada del dispositivo a su memoria interna.
4. Cuando los datos están listos, el controlador los copia a la posición de memoria que tiene en sus registros, incrementa dicha posición de memoria y decrementa el contador de datos pendientes de transferir.
5. Los pasos 3 y 4 se repiten hasta que no quedan más datos por leer.
6. Cuando el registro de contador está a cero, el controlador interrumpe a la UCP para in dicar que la operación de DMA ha terminado.


PARA LA REALIZACIÓN DE UNA OPERACIÓN DE E/S SE DEBEN EFECTUAR LAS SIGUIENTES FUNCIONES:
qRecuento de las unidades de información transferidas (normalmente bytes) para reconocer el fin de operación.
qSincronización de velocidad entre la CPU y el periférico. Detección de errores (e incluso corrección) mediante la utilización de los códigos necesarios (bits de paridad, códigos de        redundancia cíclica, etc.)
qAlmacenamiento temporal de la información. Es más eficiente utilizar un buffer temporal específico para las operaciones        de E/S que utilizan el área de datos del programa.

No hay comentarios:

Publicar un comentario