Documentos de Académico
Documentos de Profesional
Documentos de Cultura
INTEGRANTES:
INTRODUCCION
Una computadora no puede estar formada solo por la CPU y la memoria. Para darle alguna Utilidad debe comunicarse con el mundo exterior (perifricos) a travs del Subsistema entada/salida.
La misin principal del Subsistema de E/S es adaptar los dispositivos externos antes de conectarlos al bus del sistema.
La velocidad de transmisin de datos de los perifricos es siempre menor que la de la memoria y la CPU. Es necesario amortiguar esa diferencia de velocidades.
Debido a la gran diversidad de perifricos no es posible incorporar toda la lgica necesaria en el computador para manejar cada uno de stos.
Los tamaos y formatos de datos de los perifricos son diferentes a los del resto del computador.
Transferencia: El sistema de E/S debe tener toda la circuitera y seales de comunicacin apropiadas para llevar a cabo la comunicacin con cada uno de los dispositivos del sistema (Mtodo de transferencia).
COMUNICACIN CPU-PERIFERICOS
La E/S se implementa mediante perifricos. Perifrico: Elemento que permite la transferencia de informacin entre la CPU y el mundo exterior. Interfaz que traduce la informacin asncrona y analgica del mundo exterior a la informacin sncrona y codificada del computador. Dos partes: mdulo de E/S (controlador) y dispositivo externo.
Mdulo de E/S
Funciones:
Elemento que permite la conexin de un dispositivo externo al bus del sistema. 1. Control y Temporizacin: Coordina el trfico entre dispositivos internos (memoria, CPU) y externos (impresora, monitor, ). 2. Comunicacin con la CPU: Reconocer la direccin de la CPU que identifica al dispositivo externo Recepcin y decodificacin de mandatos (comandos) desde la CPU Transferencia de datos entre la CPU y el dispositivo externo Informacin sobre el estado del perifrico.
MODULOS ENTRADA/SALIDA
Cada controlador est a cargo de un tipo especfico de dispositivo. dependiendo del controlador, pueden estar varios dispositivos conectados al mismo controlador. El controlador se encarga de mover datos entre el dispositivo perifrico que controla y el buffer de almacenamiento local. el tamao del buffer vara de un controlador a otro y depende del dispositivo que controla. Son posibles tres tcnicas para las operaciones de e/s:
e/s programada e/s mediante interrupciones dma
E/S Programada
Los datos se intercambian entre el CPU y el mdulo de e/s. El CPU ejecuta un programa que controla directamente la operacin de e/s, incluyendo la comprobacin del estado del dispositivo, el envo de la orden de lectura o escritura y la transferencia del dato. Cuando el CPU enva la orden debe esperar hasta que la operacin de e/s concluya. si el CPU es ms rpido, ste estar ocioso. El CPU es el responsable de comprobar peridicamente el estado del mdulo de e/s hasta que encuentre que la operacin ha finalizado.
Normalmente habr muchos dispositivos de E/S conectados al sistema a travs de los mdulos de E/S. Cada dispositivo tiene asociado un identificador o direccin. Cuando el CPU enva una orden de E/S, la orden contiene la direccin del dispositivo deseado.
Se pueden distinguir dos tipos: E/S sncrona E/S Sncrona: cuando la operacin de E/S finaliza, el control es retornado al proceso que la gener. La espera por E/S se lleva a cabo por medio de una instruccin wait que coloca al CPU en un estado ocioso hasta que ocurre otra interrupcin. Aquellas mquinas que no tienen esta instruccin utilizan un loop.
Este loop continua hasta que ocurre una interrupcin transfiriendo el control a otra parte del sistema de operacin. Slo se atiende una solicitud de E/S por vez. El sistema de operacin conoce exactamente que dispositivo est interrumpiendo. Esta alternativa excluye procesamiento simultneo de E/S.
E/S Asncrona: retorna al programa usuario sin esperar que la operacin de E/S finalice. Se necesita una llamada al sistema que le permita al usuario esperar por la finalizacin de E/S (si es requerido). Tambin es necesario llevar un control de las distintas solicitudes de E/S. Para ello el sistema de operacin utiliza una tabla que contiene una entrada por cada dispositivo de E/S (Tabla de Estado de Dispositivos). La ventaja de este tipo de E/S es el incremento de la eficiencia del sistema. Mientras se lleva a cabo E/S, el CPU puede ser usado para procesar o para planificar otras E/S. Como la E/S puede ser bastante lenta comparada con la velocidad del CPU, el sistema hace un mejor uso de las facilidades.
Procesamiento de la Interrupcin
Cuando un dispositivo de E/S termina una operacin de E/S, se produce la siguiente secuencia de eventos:
El dispositivo enva una seal de interrupcin al procesador El procesador termina la ejecucin de la instruccin en curso antes de
responder a la interrupcin. El procesador comprueba si hay alguna interrupcin. Si hay alguna, enva una seal de reconocimiento al dispositivo que la origin El procesador debe prepararse para transferir el control a la rutina de interrupcin. Debe guardar la informacin necesaria para continuar con el proceso en curso en el punto en que se interrumpi. Guarda en la pila del sistema el contenido de los registros, etc. El procesador carga en el PC la direccin de inicio del programa de gestin o servicio de interrupcin solicitada. Una vez modificado el PC, el procesador contina con el ciclo de instruccin siguiente. Es decir, se transfiere el control a la rutina servidora de la interrupcin. Cuando finaliza el servicio de la interrupcin, se restauran los valores de los registros.
finalizado una operacin de E/S, el sistema de operacin debe saber a cul proceso pertenece. Para esto se mantiene una tabla de estado de dispositivos. Cada entrada en la tabla contiene el tipo de dispositivo, su direccin y su estado (ocioso, ocupado, no funcionando). Si es dispositivo se encuentra ocupado, entonces el tipo de solicitud junto con otros parametros son almacenados en la tabla (lista). Las operaciones TYPEAHEAD son un esquema usado por algunos dispositivos que permiten a los usuarios "adelantar" la entrada de datos antes de ser requeridas. Cuando sucede la interrupcin de final de E/S no hay proceso que la requiri, por lo tanto se necesita un buffer para almacenar los caracteres adelantados hasta que algn programa los requiera. En general, se requiere un buffer para cada terminal de entrada
E/S programada, tambin requiere la intervencin del CPU para transferir datos entre la memoria y el mdulo de E/S. Consideren el siguiente ejemplo. Cuando se va a leer una lnea desde un terminal, el primer carcter escrito es enviado al computador. Cuando el carcter es recibido por el controlador, ste interrumpe al CPU. El CPU le da servicio a la interrupcin y luego continua con el proceso que estaba ejecutando. Esto es posible cuando el dispositivo es muy lento comparado con el CPU. Entre un carcter y otro el CPU lleva a cabo gran cantidad de procesamiento. Pero qu sucede cuando estamos trabajando con dispositivos de E/S ms veloces? Tendramos interrupciones muy seguidas y se estara desperdiciando mucho tiempo.
velocidad. E1 controlador del dispositivo transfiere un bloque de datos desde o para sus buffers de almacenamiento a memoria directamente sin intervencin del CPU. Solo se produce una interrupcin por bloque en lugar de tener una interrupcin por cada byte (o palabra).
Por ejemplo, un programa solicita una transferencia de datos. El
Sistema de Operacin busca un buffer disponible. El controlador de DMA tiene sus registros actualizados con las direcciones del fuente y del destino y la longitud de la transferencia . Por lo general esta actualizacin es realizada por el manejador de dispositivo (rutina). Se indica al controlador de DMA a travs de bits de control en un registro de control pare que inicie la operacin de E/S. Mientras tanto el CPU puede llevar a cabo otras operaciones. El controlador de DMA interrumpe el CPU cuando la transferencia ha sido terminada . El CPU interviene solo al comienzo y al final de la transferencia.
Instrucciones almacenadas en memoria principal que sern ejecutadas por un procesador especial en el canal. La CPU inicia la transferencia de E/S instruyendo al canal para ejecutar el programa que est en memoria. Este programa especifica dispositivos reas de memoria a usar,prioridades y acciones ante errores. El canal siguiendo las instrucciones controla la transferencia de datos.
Funcionamiento
Para realizar una transferencia de E/S, la CPU primero ha de indicar qu canal de E/S ejecuta un determinado programa. La CPU tambin debe definir el rea de almacenamiento temporal, establecer una prioridad y establecer las correspondientes acciones en caso de error. El programa a ejecutar est cargado en memoria principal y puede contener instrucciones propias slo procesables por el canal de E/S. Despus de terminar la operacin de E/S, el canal de E/S deja el resultado en un rea de memoria y a continuacin genera una interrupcin para indicar que ha acabado.
BIBLIOGRAFIA:
http://exa.unne.edu.ar/depar/areas/informatica.htm http://ditec.um.es/so/apuntes/teoria/tema6.pdf Diccionario de la computacin. Editorial Alfaguara. 2000 ARQUITECTURA DE COMPUTADORAS. M. Morris Mano