ADMINISTRACION
DE ENTRADA/SALIDA
CONCEPTOS BASICOS DE E/S
El
sistema de entrada y salida es la parte del S.O. encargada de la administración
de los dispositivos de E/S.
Comprende
tanto la transferencia entre diversos niveles de la memoria como la
comunicación con los periféricos.
Este
sistema proporciona un medio para tratar los archivos y dispositivos de manera
uniforme, actuando como interfaz entre los usuarios y los dispositivos de e/s
que pueden ser manipulados por órdenes de alto nivel.
El SO debe controlar el funcionamiento
de todos los dispositivos de E/S para alcanzar los siguientes objetivos:
Facilitar
el manejo de los dispositivos periféricos. Para ello debe ofrecer una interfaz
entre los dispositivos y el resto del sistema que sea sencilla y fácil de
utilizar.
Optimizar
la E/S del sistema, proporcionando mecanismos de incremento de prestaciones
donde sea necesario.
Proporcionar
dispositivos virtuales que permitan conectar cualquier tipo de dispositivos
físicos sin que sea necesario remodelar el sistema de E/S del SO.
Permitir
la conexión de dispositivos nuevos de E/S, solventando de forma automática su instalación usando mecanismos del tipo plug
& play.
DISPOSITIVOS Y MANEJADORES DE DISPOSITIVOS (DEVICE DRIVERS)
DISPOSITIVOS DE E/S
Todos los dispositivos de E/S se
pueden agrupar en tres grandes grupos:
Dispositivos de interfaz de usuario.
Dispositivos de almacenamiento.
Dispositivos de comunicaciones.
DISPOSITIVOS DE INTERFAZ DE USUARIO
Se
llama así a los dispositivos que permiten la comunicación entre los usuarios y
la computadora. Dentro de este grupo se incluyen todos los dispositivos que
sirven para proporcionar interfaz con el usuario, tanto para entrada (ratón,
teclado, etc.) como para salida (impresoras, pantalla, etc.).
DISPOSITIVOS DE ALMACENAMIENTO
Se
usan para proporcionar almacenamiento no volátil de datos y memoria. Su función
primordial es abastecer de datos y almacenamiento a los programas que se
ejecutan en la CPU.
DISPOSITIVOS DE COMUNICACIONES
Permiten
conectar a la computadora con otras computadoras a través de una red. Los dos
tipos de dispositivos más importantes de esta clase son los módem, para
comunicación vía red telefónica, y las tarjetas de interfaz a la red, para
conectar la computadora a una red de área local.
MANEJADORES DE DISPOSITIVOS (DEVICE DRIVERS)
Las
unidades de E/S tienen una parte mecánica que es el propio dispositivo y otra
electrónica que se llama controlador del dispositivo y actúa como intermediario
entre la computadora y los dispositivos.
Un controlador de dispositivo (llamado
normalmente controlador, o, en inglés, driver) es un programa informático que
permite al sistema operativo interactuar con un periférico.
q
El controlador convierte el flujo de bits en serie
transmitidos desde un dispositivo en un bloque de bytes para la CPU y realizar
las correcciones de los errores que se puedan cometer en la transmisión.
q
El controlador
dispone de tres capas funcionales: La interfaz del bus, el controlador y la
interfaz del dispositivo.
PUERTOS DE E/S
El controlador contiene una serie de
registros llamados puertos de
entrada/salida. Estos registros son accesibles (pueden ser leídos y
modificados) mediante la ejecución de instrucciones máquina. Las operaciones de
E/S se realizan a través de la carga y lectura de estos registros. Casi todo
controlador dispone de los siguientes registros:
q
Registros De Estado
q
Registro De
Ordenes
q
Buffer
REGISTROS DE
ESTADO
Indica la situación actual del
dispositivo (ocupado o desocupado).
REGISTROS DE
ÓRDENES
En este registro se escribe la
operación de E/S que se desea que realice el dispositivo.
BUFFER
Un buffer es un almacén de
información. El buffer del controlador se utiliza para guardar temporalmente
los datos implicados en una operación de E/S.
Los controladores de dispositivo se
suelen agrupar en alguna de las siguientes categorías o clases:
Adaptadores de audio (tarjetas de
sonido).
Dispositivos de comunicación
(infrarrojos, módems, etc).
Dispositivos de visualización; pantallas
(displays).
Teclados.
Ratón (“mouse” y otros señaladores gráficos).
Dispositivos multimedia.
Dispositivos de Red.
Impresoras.
Almacenamiento
MECANISMOS Y
FUNCIONES DE LOS MANEJADORES DE DISPOSITIVOS (DEVICE DRIVERS)
Los manejadores de dispositivo (device
drivers) se
comunican directamente con los dispositivos o sus controladores o canales.
Los manejadores de dispositivos tienen
la función de comenzar las operaciones de E/S en un dispositivo y procesar la
terminación de una solicitud de E/S.
El sistema de archivos básico trata con bloques de datos que son los
que se intercambian con los discos o cintas. Ubica estos bloques en el
almacenamiento secundario o en el intermedio en memoria principal.
El supervisor básico de E/s se responsabiliza de iniciar y
terminar la E/s con archivos.
Selecciona el dispositivo donde se
realizará la E/S, según el archivo seleccionado. Planifica los accesos a disco
y cinta, asigna los buffers de E/S y reserva la memoria secundaria.
La E/S lógica tiene la función de permitir a los
usuarios y aplicaciones acceder a los registros.
El método de acceso es el nivel más cercano al usuario,
proporcionando una interfaz entre las aplicaciones y los archivos.
ESTRUCTURAS DE
DATOS PARA MANEJO DE DISPOSITIVOS.
Los
procesos de usuario emiten peticiones de entrada/salida al sistema operativo.
Cuando un proceso solicita una operación de E/S, el sistema operativo prepara
dicha operación y bloquea al proceso hasta que se recibe una interrupción del
controlador del dispositivo indicando que la operación está completa.
En el manejo de los dispositivos de
E/S es necesario, introducir dos nuevos términos:
BUFFERING (uso de memoria intermedia).
Trata de mantener ocupados tanto la
CPU como los dispositivos de E/S. Los datos se leen y se almacenan en un
buffer, una vez que los datos se han leído y la CPU va a iniciar inmediatamente
la operación con ellos, el dispositivo de entrada es instruido para iniciar
inmediatamente la siguiente lectura.
La CPU y el dispositivo de entrada
permanecen ocupados. Cuando la CPU esté libre para el siguiente grupo de datos,
el dispositivo de entrada habrá terminado de leerlos. La CPU podrá empezar el
proceso de los últimos datos leídos, mientras el dispositivo de entrada
iniciará la lectura de los datos siguientes.
SPOOLING
Esta forma de procesamiento se
denomina spooling, utiliza el disco como un buffer muy grande para leer tan por
delante como sea posible de los dispositivos de entrada y para almacenar los
ficheros hasta que los dispositivos de salida sean capaces de aceptarlos.
Es una característica utilizada en la
mayoría de los sistemas operativos.
OPERACIONES DE
ENTRADA/SALIDA
Tanto en la E/S programada como la
basada en interrupciones, la CPU debe encargarse de la transferencia de datos
una vez que sabe que hay datos disponibles en el controlador. Una mejora
importante para incrementar la concurrencia entre la CPU y la E/S consiste en
que el controlador del dispositivo se pueda encargar de efectuar la
transferencia de datos. Esta técnica se denomina acceso directo a memoria
(DMA, Direct Memory Access).
ACCESO DIRECTO A MEMORIA (DMA)
Este
dispositivo permite la transferencia directa de información entre la memoria y
los periféricos o viceversa, sin
requerir intervención alguna por parte del procesador.
·
El DMA necesita:
- Registro: almacena
la dirección de memoria desde donde se produce la transferencia.
- Registro contador: guarda
la longitud de bloque a transferir.
- Bits: indica
si la operación es de lectura o escritura.
- Bloque de control: controla
el funcionamiento del sistema.
·
Existen 3 tipos de transferencia para el máximo aprovechamiento del bus:
- Por ráfagas: el DMA
toma el control del bus y no lo suelta hasta terminar la transferencia.
- Por robo de ciclo: el
DMA toma el bus durante un ciclo enviando una palabra cada vez.
- Transparente: se aprovechan los ciclos en que el procesador no usa el bus.
OPERACIONES DE E/S
Existen varias operaciones, las más
importantes son las siguientes:
Lectura
El canal transfiere a memoria
principal un bloque de palabras de tamaño especificado en el campo número de
palabras, en orden ascendente de direcciones, empezando en la dirección
especificada en el campo dirección del dato.
Escritura
El canal transfiere datos de memoria
principal al dispositivo. Las palabras se transfieren en el mismo orden que en
la operación de lectura.
Control
Se utiliza esta orden para enviar
instrucciones específicas al dispositivo de E/S, como rebobinar una cinta
magnética, etc.
Bifurcación
Cumple en el programa de canal la
misma función que una instrucción de salto en un programa normal.
No hay comentarios.:
Publicar un comentario