4.1 Dispositivos y manejadores de dispositivos:
device drivers.
Dispositivos de entrada/salida
Se pueden clasificar en dos grandes categorías:
1. Dispositivos de bloque
2. Dispositivos de carácter
Las principales características de los dispositivos de bloque son:
- La información se almacena en bloques de tamaño fijo.
- Cada bloque tiene su propia dirección.
- Los tamaños más comunes de los bloques van desde los 128 bytes hasta los 1.024 bytes.
- Se puede leer o escribir en un bloque de forma independiente de los demás, en cualquier momento.
- Un ejemplo típico de dispositivos de bloque son los discos.
Las principales características de los dispositivos de carácter son:
-La información se transfiere como un flujo de caracteres, sin sujetarse a una estructura de bloques.
- No se pueden utilizar direcciones.
- No tienen una operación de busqueda.
- Unos ejemplos típicos de dispositivos de carácter son las impresoras de línea, terminales, interfaces de una red, ratones, etc.
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 esta 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 esta colocado en el cilindro adecuado, etc.
o Resumiendo: debe decidir cuales 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 llamo.
Inicia otra solicitud pendiente o queda en espera.
No hay comentarios:
Publicar un comentario