RSS

jueves, 10 de diciembre de 2009

5.2.3 MANEJADORES DE DISPOSITIVOS

Todo el código que depende de los dispositivos aparece en los manejadores de dispositivos.
Cada controlador posee uno o más registros de dispositivos:
• Se utilizan para darle los comandos.
• Los manejadores de dispositivos proveen estos comandos y verifican su ejecución adecuada.
La labor de un manejador de dispositivos es la de:
• Aceptar las solicitudes abstractas que le hace el software independiente del dispositivo.
• Verificar la ejecución de dichas solicitudes.
Si al recibir una solicitud el manejador está ocupado con otra solicitud, agregara la nueva solicitud a una cola de solicitudes pendientes.
La solicitud de e / s, por ej. para un disco, se debe traducir de términos abstractos a términos concretos:
• El manejador de disco debe:
o Estimar el lugar donde se encuentra en realidad el bloque solicitado.
o Verificar si el motor de la unidad funciona.
o Verificar si el brazo está colocado en el cilindro adecuado, etc.
o Resumiendo: debe decidir cuáles son las operaciones necesarias del controlador y su orden.
o Envía los comandos al controlador al escribir en los registros de dispositivo del mismo.
o Frecuentemente el manejador del dispositivo se bloquea hasta que el controlador realiza cierto trabajo; una interrupción lo libera de este bloqueo.
o Al finalizar la operación debe verificar los errores.
o Si todo esta o.k. transferirá los datos al software independiente del dispositivo.
o Regresa información de estado sobre los errores a quien lo llamó.
o Inicia otra solicitud pendiente o queda en espera.

0 comentarios:

Publicar un comentario