Fundamentos de Manejadores de Dispositivos y Sistemas de E/S
Objetivos de los Manejadores de Interrupciones
¿Cuáles son los primeros objetivos de los manejadores de interrupciones?
- Consiste en que el programador o el usuario no debe darse cuenta de los manejadores de bajo nivel.
Manejadores de Bajo Nivel
Escribe algunos ejemplos de manejadores de bajo nivel:
Si el dispositivo está ocupado y se debe suspender el proceso o sincronizar algunas tareas, desde el punto de vista del proceso o usuario, el sistema simplemente se tardó más o menos en responder a su petición.
Almacenamiento y Funciones
¿En dónde se almacena el código que depende de los dispositivos?
En los manejadores de dispositivos.
¿Qué prevén los manejadores de dispositivos?
Prevén los comandos y verifican su ejecución adecuada.
¿Cuántos registros contiene un controlador?
Uno o más registros.
Labor de los Manejadores de Dispositivos
La labor principal de los manejadores de dispositivos incluye:
- a) Aceptar las solicitudes abstractas que le hace el software independiente del dispositivo.
- b) Verificar la ejecución de dichas solicitudes.
- c) Si al recibir una señal del manejador esta está ocupada, agrega una nueva cola de solicitud a las solicitudes pendientes.
Traducción de Solicitudes
¿Cómo se deben traducir las solicitudes de E/S para un disco?
Se deben traducir de términos abstractos a términos concretos.
Funciones del Manejador de Disco
- a) Estimar el lugar donde se encuentran en realidad el bloque solicitado.
- b) Verificar si el motor de la unidad funciona.
- c) Verificar si el brazo está colocado en el cilindro adecuado.
Operaciones de un Controlador
- a) Enviar los comandos al controlador al escribir en los registros de los dispositivos del mismo.
- b) Frecuentemente, el manejador de dispositivos se bloquea hasta que el controlador realice cierto trabajo; una interrupción lo libera de ese bloqueo y, al final de la operación, verifica los errores.
- c) Si todo está bien, transfiere los datos al software independiente del dispositivo.
Software Independiente del Dispositivo
¿Cuáles son las funciones básicas del software independiente del dispositivo?
- a) Efectuar las funciones de E/S comunes a todos los dispositivos.
- b) Proporcionar una interfaz uniforme del software a nivel usuario.
- c) Ocultar los niveles superiores.
Sistemas de Spooling y Bibliotecas
¿Qué es un sistema spooling?
Es una forma de trabajar con los dispositivos de E/S de uso exclusivo de un sistema de multiprogramación.
¿Qué son las bibliotecas de funciones?
Es aplicar transformaciones de E/S según establezca el programador.