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:
- Estimar el lugar donde se
encuentra en realidad el bloque solicitado.
- Verificar si el motor de la
unidad funciona.
- Verificar si el brazo esta
colocado en el cilindro adecuado, etc.
- Resumiendo: debe
decidir cuales son las operaciones necesarias del controlador y su orden.
- Envía los comandos al
controlador al escribir en los registros de dispositivo del mismo.
- Frecuentemente el manejador
del dispositivo se bloquea hasta que el controlador realiza cierto
trabajo; una interrupción lo libera de este bloqueo.
- Al finalizar la operación
debe verificar los errores.
- Si todo esta o.k.
transferirá los datos al software independiente del dispositivo.
- 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