Está en la página 1de 33

Sistemas de Entrada/Salida

Juan Manuel Reyes Garca


Carlos Andrs Mera Banguero

Juan Manuel Reyes Garca

Carlos Andrs Mera Banguero

Sistemas de E/S

Contenido
Introduccin
Hardware de E/S Interfaz de E/S de las Aplicaciones Subsistema de E/S del Ncleo Transformacin Hardware Desempeo
Juan Manuel Reyes Garca

E/S

en

solicitudes

de

Carlos Andrs Mera Banguero

Sistemas de E/S

Introduccin
Una de las funciones principales del Sistema Operativo corresponde al control de todos los dispositivos de entrada/salida: Sincronizacin Captura de Interrupciones Llamadas al Sistema Control de Errores
Proporciona una interfaz que debe ser sencilla y facil de usar y en la medida de los posible ser independiente del dispositivo.
Juan Manuel Reyes Garca

Carlos Andrs Mera Banguero

Sistemas de E/S

Hardware de E/S
Bsicamente son 4 los elementos que estn relacionados con la conexin de los dispositivos al Computador:
Puntos de Conexin (Puertos). Buses Controladores Dispositivos
Juan Manuel Reyes Garca

Carlos Andrs Mera Banguero

Sistemas de E/S

Hardware de E/S
Monitor

Procesador
Cach

Disco

Disco
Controlador SCSI

Controlador De Grficos

Controlador De Memoria

Memoria

Bus PCI
Interfaz Bus Expansin

Controlador De Disco

Teclado

Puerto Serial

Bus Expansin Disco Disco


Puerto Paralelo

Juan Manuel Reyes Garca

Carlos Andrs Mera Banguero

Sistemas de E/S

Hardware de E/S
Existen varios mecanismos que permiten la comunicacin de los dispositivos de E/S con la CPU:
Escrutinio (Polling). A travs de Interrupciones Acceso Directo a Memoria (DMA)

Juan Manuel Reyes Garca

Carlos Andrs Mera Banguero

Sistemas de E/S

Escrutinio (Polling)
Se comprueba cclicamente mediante instrucciones del programa los registros de estado de los dispositivos. El protocolo es establecido con una nocin bsica de saludo (Handshaking).
1. La CPU espera hasta que el controlador pone su bit ocupado
en 0. 2. La CPU enciende el bit de escritura y escribe un byte en el registro de salida de datos (Si la operacin es de salida). 3. La CPU enciende el bit de orden lista.

Juan Manuel Reyes Garca

Carlos Andrs Mera Banguero

Sistemas de E/S

Escrutinio (Polling)
4. El controlador percibe la orden lista y pone su bit ocupado en encendido (1).
5. El controlador lee el registro de orden y ve que la orden es escribir, luego lee el registro de salida de datos para obtener el byte y realiza la E/S con el dispositivo. 6. El controlador apaga el bit de orden lista, borra el bit de error del registro de situacin para indicar que la E/S con el dispositivo se realiz con xito y apaga el bit de ocupado para indicar que ya termin. Este ciclo se repite para cada byte a trasmitir.

Juan Manuel Reyes Garca

Carlos Andrs Mera Banguero

Sistemas de E/S

Escrutinio (Polling)
Este mecanismo de comunicacin presenta un problema: La CPU tiene que esperar un tiempo considerable a que el controlador est listo para trasmitir o recibir datos.
Existe una forma ms eficiente de comunicacin y es a travs de interrupciones.
Juan Manuel Reyes Garca

Carlos Andrs Mera Banguero

Sistemas de E/S

Interrupciones de E/S
Este mecanismo permite al Controlador del dispositivo notificar a la CPU cuando el dispositivo est listo para recibir el servicio (trasmitir o recibir informacin).
Dicha notificacin la implementa por medio del IRQ (Solicitud de Interrupcin) el cual la CPU inspecciona despus de cada instruccin. El siguiente grfico ilustra el proceso:
Juan Manuel Reyes Garca

10

Carlos Andrs Mera Banguero

Sistemas de E/S

Interrupciones de E/S
CPU
El driver del dispositivo inicia E/S

Controlador E/S
Inicia E/S

La CPU en ejecucin verifica si hay interrupciones entre una y otra instruccin

Entrada/Salida Lista, Finalizada o Error


La CPU recibe la interrupcin, transfiere el control al manejador de interrupcin

Genera seal de la Interrupcin

El manejador de interrupcin procesa datos, regresa de la interrupcin

La CPU reanuda el procesamiento de la tarea interrumpida

Juan Manuel Reyes Garca

11

Carlos Andrs Mera Banguero

Sistemas de E/S

Interrupciones de E/S
Hay varios aspectos que se deben tener en cuenta con el manejo de interrupciones:
Capacidad de Postergar
Despacho sin escrutamiento de Dispositivo Interrupciones con diferentes Prioridades

Dos Tipos de Interrupciones: No Enmascarables


Enmascarables

Juan Manuel Reyes Garca

12

Carlos Andrs Mera Banguero

Sistemas de E/S

Acceso Directo a Memoria (DMA)


El DMA es un mecanismo que permite realizar intercambio de datos entre la memoria y los dispositivos con la mnima intervencin del procesador.
CPU

Cach

Controlador de DMA/bus/interrupciones

Bus Expansin

Memoria

buffer

Controlador De Disco

Bus PCI

Disco

Disco

Juan Manuel Reyes Garca

13

Carlos Andrs Mera Banguero

Sistemas de E/S

Interfaz de E/S de las Aplicaciones


Las interfaces de E/S son aquellas que permiten tratar los dispositivos de E/S de una forma uniforme y estandarizada. Este concepto se basa en tres elementos de la Ingeniera de Software:
Ncleo

Abstraccin

Subsistema de E/S del Ncleo Driver del Teclado Controlador del Teclado Driver del Bus PCI Controlador del BUS PCI

Encapsulamiento
Estructuracin
Juan Manuel Reyes Garca

Teclado

BUS PCI

14

Carlos Andrs Mera Banguero

Sistemas de E/S

Interfaz de E/S de las Aplicaciones


Aspecto Modo de transferencia Variacin Por Caracteres Por Bloques Secuencial

Mtodo de acceso

Aleatorio
Sincrnica Asincrnica Dedicado Compartible Latencia, Tiempo de Busqueda Tasa de Transferencia, Retardo Slo Lectura

Planificacin de Transferencia

Compartir

Velocidad del Dispositivo

Direccin de E/S

Slo Escritura Lectura - Escritura

En lo que respecta a las aplicaciones, el sistema operativo oculta muchas de las diferencias mencionadas en esta tabla.
Juan Manuel Reyes Garca

15

Carlos Andrs Mera Banguero

Sistemas de E/S

Interfaz de E/S de las Aplicaciones


Dispositivos por Bloques y Caracteres:
Los dispositivos orientados a bloques tienen la propiedad de que se pueden direccionar, esto es, el programador puede escribir o leer cualquier bloque del dispositivo realizando primero una operacin de posicionamiento sobre el dispositivo. Por otro lado, los dispositivos orientados a caracteres son aquellos que trabajan con secuencias de byes sin importar su longitud ni ninguna agrupacin en especial. No son dispositivos direccionables. Dispositivos de Red: Estos dispositivos son accedidos va sockets

Juan Manuel Reyes Garca

16

Carlos Andrs Mera Banguero

Sistemas de E/S

Interfaz de E/S de las Aplicaciones


E/S Bloqueadora y no Bloqueadora: Cuando se usa una llamada al sistema bloqueadora, la ejecucin de la aplicacin se suspende. La aplicacin pasa de la cola de ejecucin a la cola de espera, cuando termina la llamada al sistema la aplicacin pasa nuevamente a cola de ejecucin. Cuando la E/S es no bloqueadora (Asincrnica)
Juan Manuel Reyes Garca

17

Carlos Andrs Mera Banguero

Sistemas de E/S

Servicios del SO para E/S


El ncleo del sistema operativo cuenta con un conjunto de servicios que mejoran la eficiencia del computador respecto a E/S, entre estos servicios estn: Planificacin Almacenamiento Temporal Manejo de Errores Estructuras de Datos

Juan Manuel Reyes Garca

18

Carlos Andrs Mera Banguero

Sistemas de E/S

Planificacin
Planificar un conjunto de solicitudes es determinar un buen orden de ejecucin. La planificacin puede mejorar el desempeo global del sistema a travs de:
Repartir equitativamente el acceso a los procesos Reducir el tiempo de espera promedio de las operaciones de E/S.

La reorganizacin en el orden de servicio es la esencia de la planificacin.


Juan Manuel Reyes Garca

19

Carlos Andrs Mera Banguero

Sistemas de E/S

Almacenamiento Temporal
El uso de almacenamiento temporal para mejorar el desempeo del sistema es una estrategia utilizada ampliamente, y en diversas partes del sistema. Para E/S se distinguen tres clases: Buffers Cachs Spool

Juan Manuel Reyes Garca

20

Carlos Andrs Mera Banguero

Sistemas de E/S

Buffers
Es un rea de memoria en la que se almacenan datos mientras se transfieren entre dos dispositivos, o entre un dispositivo y una aplicacin. Hay tres razones para el uso de buffers:
Diferencia de velocidades entre productor y consumidor Diferencia de tamao de transferencia de datos Consistencia en el copiado de datos

Juan Manuel Reyes Garca

21

Carlos Andrs Mera Banguero

Sistemas de E/S

Cachs
Es una regin de memoria rpida que contiene copias de datos. El acceso a cach es mas eficiente que el acceso al almacenamiento original. La diferencia entre un buffer y un cach es que un buffer podra contener la nica copia existente de un elemento de informacin, mientras que un cach, por definicin, slo contiene una copia de almacenamiento ms rpido de un elemento que existe en otra parte. Hay ocasiones en que una regin de memoria se utiliza para ambos fines.
Juan Manuel Reyes Garca

22

Carlos Andrs Mera Banguero

Sistemas de E/S

Spool
Es un buffer que contiene salidas para un dispositivo que no puede aceptar corrientes de datos intercaladas. A travs de un spool se manejan solicitudes concurrentes de aplicaciones hacia dispositivos que slo pueden manejar una solicitud al tiempo. No es la nica manera de manejar acceso concurrente a un dispositivo de este tipo.
Juan Manuel Reyes Garca

23

Carlos Andrs Mera Banguero

Sistemas de E/S

Manejo de Errores
Por regla general, una llamada E/S devuelve un bit de informacin sobre el estado de la llamada (xito o fracaso). El nivel de detalle, los cdigos y los formatos de error utilizados vara de un sistema operativo a otro, y tambin en la medida en que se lo permita cada dispositivo.

Juan Manuel Reyes Garca

24

Carlos Andrs Mera Banguero

Sistemas de E/S

Estructuras de Datos para E/S


El ncleo del sistema operativo necesita mantener informacin de estado sobre el uso que se le da a los dispositivos. La informacin sobre el uso de los dispositivos es almacenada en diversas estructuras de datos internas como tablas para archivos abiertos, para conexiones de red, etc. Para el mantener la generalidad y facilitar el encapsulamiento son utilizadas tcnicas OO
Juan Manuel Reyes Garca

25

Carlos Andrs Mera Banguero

Sistemas de E/S

Solicitudes de E/S a Hardware


Cuando una aplicacin hace una solicitud de entrada o salida respecto a un dispositivo, se presentan varias etapas en las cuales se traducen las referencias que maneja la aplicacin a direcciones reales de hardware. Los sistemas operativos modernos obtienen un grado de flexibilidad de las mltiples etapas de bsqueda en tablas del trayecto entre una solicitud y un controlador de dispositivo fsico. Los mecanismos que transfieren solicitudes entre aplicaciones y drivers son generales.
Juan Manuel Reyes Garca

26

Carlos Andrs Mera Banguero

Sistemas de E/S

Desempeo
La entrada/salida es un factor importante para el desempeo del sistema ya que:
Las solicitudes e/s son comunes. Los dispositivos son regularmente los mas lentos del sistema. Las peticiones de e/s obligan al procesador a ejecutar instrucciones de manejadores de dispositivos y planificadores. Las conmutaciones de contexto exigen a la CPU.
Juan Manuel Reyes Garca

27

Carlos Andrs Mera Banguero

Sistemas de E/S

Desempeo
Diversos principios pueden ser aplicados para mejorar la eficiencia de la E/S:
Reducir el nmero de conmutaciones de contexto. Reducir el nmero de copias a memoria durante la transferencia de dispositivo a aplicacin. Reducir el nmero de interrupciones. Aumentar concurrencia empleando DMA o canales. Incorporar primitivas de procesamiento en hardware.
Juan Manuel Reyes Garca

28

Carlos Andrs Mera Banguero

Sistemas de E/S

Conclusiones
La entrada/salida es una parte significativa en la arquitectura de un computador, sin embargo, este aspecto es muchas veces relegado durante el diseo de los sistemas com putacionales, tanto en la parte de hardware como en la de software.
Entre las tcnicas utilizadas para la mejora en la transferencia de datos entre dispositivos, es notable la mejora en el desempeo que presenta la estrategia de disminuir la participacin del procesador en el montono proceso de trasferir byte por byte entre dispositivos y relegar esa tarea a otro dispositivo de hardware especializado, como es el caso de los controladores DMA.
Juan Manuel Reyes Garca

29

Carlos Andrs Mera Banguero

Sistemas de E/S

Conclusiones
Es de destacar la estandarizacin que se ha dado en las interfaces que presentan los dispositivos de E/S con los dems componentes hardware del computador, as como con los sistemas operativos. Esta interfaz es genrica a tal punto que permite el manejo de estos elementos de forma uniforme e independiente de las caractersticas particulares de cada dispositivo.
La planificacin es fundamental para la mejora del desempeo general del sistema cuando se dan diferencias en velocidad tan grandes como la que se presenta entre el procesador un dispositivo de entrada/salida.

Juan Manuel Reyes Garca

30

Carlos Andrs Mera Banguero

Sistemas de E/S

Conclusiones
El manejo de memorias de almacenamiento temporal es til, no slo para mejorar la velocidad de acceso a datos desde dispositivos mas rpidos sino tambin para solucionar problemas de semntica de copiado.

Juan Manuel Reyes Garca

31

Carlos Andrs Mera Banguero

Sistemas de E/S

Conclusiones
El manejo de memorias de almacenamiento temporal es til, no slo para mejorar la velocidad de acceso a datos desde dispositivos mas rpidos sino tambin para solucionar problemas de semntica de copiado.

Juan Manuel Reyes Garca

32

Carlos Andrs Mera Banguero

Sistemas de E/S

Bibliografa
Silberstchatz, Abraham. Galvin, Peter Operativos, Prentice Hall, Quinta Edicin. Baer. Sistemas

http://www.ldc.usb.ve/~spd/Docencia/ci3821/Tema2/Default.htm. Modulo de Entrada/Salida. Angela Di Serio, Septiembre de 1998.

Juan Manuel Reyes Garca

33

Carlos Andrs Mera Banguero

Sistemas de E/S

También podría gustarte