Title: Sistemas Operativos ENTRADA SALIDA
1 Sistemas Operativos ENTRADA / SALIDA
IIC 2332 Semestre 2004-I Domingo Mery
Präsentation
D.Mery
1
Sistemas Operativos
2 E/S
Funciones
- Principales funciones de un sistema operativo al
manejar dispositivos de entrada/salida (E/S) - comunicarse con los dispositivos
- manejar interrupciones
- manejar errores
- proporcionar interfaz sencilla y fácil de usar
- tratar de generalizar interfaz independiente del
dispositivo - (ej. diskettes, disco duro, CD-ROM).
D.Mery
2
Sistemas
Operativos
Präsentation
3 E/S
Clasificaciones
Clasificación de los dispositivos E/S
Stallings 1. Dispositivos legibles por los
humanos apropiados para la comunicación con el
usuario (mouse, teclado, monitor, impresora) 2.
Dispositivos legibles por máquina adecuados para
comunicarse con equipos electrónicos (discos,
cintas) 3. Dispositivos de comunicaciones
apropiados para comunicarse con dispositivos
lejanos (modem, tarjeta Ethernet).
D.Mery
3
Sistemas
Operativos
Präsentation
4 E/S
Clasificaciones
- Diferencias de los dispositivos E/S
- Aplicaciones (ej disco que almacena archivos,
disco que almacena páginas de memoria virtual) - Complejidad del control (ej impresora vs. disco)
- Unidad de transferencia (bytes o bloques)
- Representación de los errores (check sum,
codificación) - Condiciones de error (cómo y qué se informa)
- Velocidad de los datos (diferencia en varios
órdenes de magnitud)
D.Mery
4
Sistemas
Operativos
Präsentation
5 E/S
Clasificaciones
Tarjeta posteruir Sun Gigaplane XB Bus PCI
1010 1011
1012
Velocidades de datos de dispositivos
D.Mery
5
Sistemas
Operativos
Präsentation
6 E/S
Clasificaciones
Velocidades de datos de dispositivos
D.Mery
6
Sistemas
Operativos
Präsentation
7 E/S
Clasificaciones
- Clasificación de los dispositivos E/S
Tanenbaum - Dispositivos de bloques dispositivos que
almacenan la información en bloques de tamaño
fijo (discos) - Dispositivos de caracteres maneja la información
mediante un flujo de caracteres sin
estructurarlos en bloques (mouse, teclado,
impresora)
D.Mery
7
Sistemas
Operativos
Präsentation
8 E/S
Clasificaciones
- Existen tres técnicas para realizar la E/S
- E/S programada
- E/S dirigida por interrupciones
- E/S por acceso directo a la memoria
D.Mery
8
Sistemas
Operativos
Präsentation
9 E/S
Clasificaciones
E/S programada El dispositivo E/S realiza la
acción (no la CPU) colocando los bits necesarios
en sus registros de status. No hay
interrupciones. La CPU chequea los bits de
status continuamente.
D.Mery
9
Sistemas
Operativos
Präsentation
10 E/S
Clasificaciones
E/S programada
Ej Pasos para la impresión de una cadena
D.Mery
10
Sistemas Operativos
Präsentation
11 E/S
Clasificaciones
E/S dirigida por interrupciones La CPU es
interrumpida cuando el dispositivo E/S está listo
para intercambiar datos La CPU esta libre entre
la solicitud de datos e interrupción No hay
necesidad de esperar Consume mucha CPU ya que
cada byte leÃdo/escrito pasa por la CPU
desde/hacia la memoria
D.Mery
11
Sistemas Operativos
Präsentation
12 E/S
Clasificaciones
E/S dirigida por interrupciones
Pasos que ocurren cuando un E/S terminó su tarea
D.Mery
12
Sistemas Operativos
Präsentation
13 E/S
Clasificaciones
- Interrupción precisa (definición)
- El contador de programa (PC) se guarda en un
lugar conocido. - Todas las instrucciones previas a aquella a la
que apunta PC ya se ejecutaron por completo. - No se ha ejecutado ninguna instrucción posterior
a aquella a la que apunta PC. - Se conoce (y se guarda en un lugar conocido) el
estado de ejecución de la instrucción a la que
apunta PC.
D.Mery
13
Sistemas Operativos
Präsentation
14 E/S
Clasificaciones
- Interrupción precisa (definición)
- El contador de programa (PC) se guarda en un
lugar conocido. - Todas las instrucciones previas a aquella a la
que apunta PC ya se ejecutaron por completo. - No se ha ejecutado ninguna instrucción posterior
a aquella a la que apunta PC. - Se conoce (y se guarda en un lugar conocido) el
estado de ejecución de la instrucción a la que
apunta PC.
Una interrupción que no cumple con estos
requisitos es una interrupción imprecisa y hace
muy difÃcil el diseño de un sistema operativo,
pues se debe determinar que ha sucedido y que aún
no ha sucedido cuando se interrumpe.
D.Mery
14
Sistemas Operativos
Präsentation
15 E/S
Clasificaciones
E/S con acceso directo a memoria Transfiere un
bloque de datos directamente hacia/desde la
memoria Se envÃa una interrupción cuando los
datos fueron transferidos La CPU sólo participa
al inicio y al final de la acción
D.Mery
15
Sistemas Operativos
Präsentation
16 E/S
Clasificaciones
E/S con acceso directo a memoria
Funcionamiento de una transferencia por DMA
D.Mery
16
Sistemas Operativos
Präsentation
17 E/S
Clasificaciones
E/S con acceso directo a memoria
DMA con un solo bus
D.Mery
17
Sistemas Operativos
Präsentation
18 E/S
Clasificaciones
E/S con acceso directo a memoria
DMA con buses independientes
D.Mery
18
Sistemas Operativos
Präsentation
19 E/S
Clasificaciones
E/S con acceso directo a memoria
DMA con bus E/S
D.Mery
19
Sistemas Operativos
Präsentation
20 E/S
Diseño
- Objetivos del diseño
- 1. Eficiencia
- La mayorÃa de los dispositivos son muy lentos en
comparación con la memoria y la CPU. - Se usa multiprogramación para aprovechar los
tiempos de espera. - Intercambio se usa para introducir más procesos
listos para la ejecución. - El principal esfuerzo en el diseño de E/S ha sido
crear esquemas que mejoren su eficiencia. - El área que ha recibido más atención ha sido el
disco duro, su rapidez no ha evolucionado de la
misma manera que la velocidad de las CPUs y
memorias.
D.Mery
20
Sistemas Operativos
Präsentation
21 E/S
Diseño
- Objetivos del diseño
- 2. Generalidad
- Se desea que se gestionen todos los dispositivos
de una manera uniforme - Asà se oculta la mayorÃa de detalles de la E/S
con en rutinas de bajo nivel, de forma que los
procesos contemplen los dispositivos en términos
de funciones generales (leer, escribir, abrir,
cerrar, etc.)
D.Mery
21
Sistemas Operativos
Präsentation
22 E/S
Evolución
- Evolución de las funciones E/S (parte I)
- El procesador controla directamente los
dispositivos periféricos. - Se añade una controladora del dispositivo de E/S.
La CPU utiliza E/S programada. - Se incorporan interrupciones.
- La controladora recibe el control directo del
DMA, se transfieren datos hacia/desde la memoria
sin usar CPU.
D.Mery
22
Sistemas Operativos
Präsentation
23 E/S
Evolución
- Evolución de las funciones E/S (parte II)
- La controladora posee un procesador separado con
un conjunto de instrucciones especializadas para
E/S. La CPU central le ordena al procesador de
E/S la ejecución de un programa de E/S en la
memoria principal. - La controladora E/S posee adicionalmente su
propia memoria local. La controladora es un
computador independiente.
D.Mery
23
Sistemas Operativos
Präsentation
24 E/S
Hardware
Controladoras de dispositivos Los dispositivos
de E/S tienen componentes - mecánicos -
electrónicos El componente electrónico se
denomina - controladora de dispositivo o -
adaptador de dispositivo ( device
controller) Muchas veces la controladora es
capaz de manejar múltiples dispositivos
idénticos. Muchas veces la controladora adopta
un estándar (discos IDE o SCSI)
D.Mery
24
Sistemas Operativos
Präsentation
25 E/S
Hardware
- Funciones tÃpicas de las controladoras de
dispositivos - Convertir un flujo de bits en serie en un bloque
de bytes - Corregir errores si es posible
- Copiar datos a la memoria principal
D.Mery
25
Sistemas Operativos
Präsentation
26 E/S
Hardware
Controladora de dispositivos La controladora
tiene registros que le sirven para comunicarse
con la CPU. Al escribir - para suministrar
datos - para leer datos - encender o apagar
dispositivo - etc. Al leer - para averiguar
el estado del dispositivo Además la controladora
por lo general tiene un búfer.
D.Mery
26
Sistemas Operativos
Präsentation
27 E/S
Hardware
Manejo de los registros
a) Espacio de E/S y de memoria aparte
D.Mery
27
Sistemas Operativos
Präsentation
28 E/S
Hardware
Manejo de los registros
b) E/S con correspondencia en memoria
D.Mery
28
Sistemas Operativos
Präsentation
29 E/S
Hardware
Manejo de los registros
c) hÃbrido
D.Mery
29
Sistemas Operativos
Präsentation