Transcript EXPO_4

INSTITUTO TECNOLOGICO SUPERIOR DE
TAMAZUNCHALE
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
ordenes 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 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.
 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.
 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:
Registros De Estado
 Registro De Ordenes
Buffer
REGISTROS DE ESTADO
Indica la situación actual del dispositivo (ocupado
o desocupado).
REGISTROS DE ORDENES
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
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 mas cercano al
usuario, proporcionando una interfaz entre las
aplicaciones y los archivos.
Estructura 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.
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:
1. Registro: almacena la dirección de memoria
desde donde se produce la transferencia.
2. Registro contador: guarda la longitud de bloque
a transferir.
3. Bits: indica si la operación es de lectura o
escritura.
4. Bloque de control: controla el funcionamiento
del sistema.
Existen 3 tipos de transferencia para el
máximo aprovechamiento del bus:
1. Por ráfagas: el DMA toma el control del bus y
no lo suelta hasta terminar la transferencia.
2. Por robo de ciclo: el DMA toma el bus
durante un ciclo enviando una palabra cada
vez.
3. 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 numero 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.