Drivers

Páginas: 23 (5716 palabras) Publicado: 5 de febrero de 2013
1.- INTRODUCCIÓN.
Cada clase de dispositivo de entrada/salida tiene asociado un controlador de dispositivo
Individual, el cual es un proceso con sus propios estados registros y pila. Los controladores de
Dispositivos se comunican con el sistema de archivo usando el mecanismo de transferencia de mensajes.
Los controladores de dispositivo sencillos se escriben como archivos fuentes únicas,mientras que otros
Controladores (RAM, Disco Duro, Disco Flexible) tiene, además de un archivo fuente para manejar cada
Tipo de dispositivo, un conjunto de rutinas comunes que apoyan todos los tipos de hardware distinto. La
Separación de las partes del software dependientes del hardware e independientes del hardware facilita
La adaptación a una diversidad de configuraciones de hardwarediferentes. Aunque se use algo de código
Fuente común, el controlador de cada tipo de disco se ejecuta como proceso aparte, con el objeto de
Realizar transferencias de datos rápidas.
En el caso de grupo de dispositivos como los discos, para los cuales hay varios archivos fuentes,
También hay archivos cabecera. Driver.h apoya todos los dispositivos por bloques.
La diferencia principal entre loscontroladores de dispositivos y otros procesos es que los
Primeros se enlazan juntos en el kernel, y, por tanto, comparten el mismo espacio de dirección.
Cuando un proceso de usuario solicita una operación de E/S, envía un mensaje al proceso del
Sistema de ficheros .Este a su vez, envía un mensaje al manejador del dispositivo pidiéndole que realice
La operación .Una vez que la operación sehaya llevado a cabo el manejador de dispositivo enviará un
Mensaje de respuesta al proceso que la solicitó. Esto se muestra en la figura 1.Dentro del Kernel se encuentran los drivers de dispositivos de bloques y dentro de este conjunto
De código podemos diferenciar dos niveles, un nivel donde encontramos un software independiente del
Hardware (donde se encuentra Driver.c.h y Drvlib.c.h) y un segundo nivel donde se encuentran los
Drivers propios de cada dispositivo, de tal forma de que si se cambia undispositivo solo habrá que
Cambiar el driver de este dispositivo.

Figura 1.- Sistema estructurado en procesos.
Procesos
De
Usuario
Sistema
De
Ficheros
Procesos
1
3
2
Drivers
De
Dispositivos
Espacio de usuario
Espacio del kernel
Software independiente del
Hardware
(Driver.c.h, Drvlib.c.h)
Manejadores de dispositivos Ampliación de Sistemas Operativos DISPOSITIVOS POR BLOQUES
4Para los dispositivos de bloques los mensajes de solicitud y respuesta son los que se muestran en
La figura 2. El mensaje de petición incluye la dirección de un área de almacenamiento intermedio que
Contiene los datos que se van a trasmitir o en la que se esperan los datos recibidos. La respuesta incluye
Información de estado que permite al proceso solicitante verificar que su petición sellevó a cabo
Correctamente.

SOLICITUD
CAMPO TIPO SIGNIFICADO
m.m_type int Operación solicitada
m.DEVICE int Dispositivo secundario a utilizar
m.POSITION long Posición en el dispositivo
m.PROC_NR int Proceso que solicita la E/S
m.ADDRESS char* Dirección dentro de PROC_NR
m.COUNT int Bytes por transferir
RESPUESTA
CAMPO TIPO SIGNIFICADO
m.m_type int Operaciónsolicitada : siempre TASK_REPLY
m.REP_PROC_NR int Proceso de usuario que solicita la E/S m.PROC_NR
m.REP_STATUS int Bytes transferidos o código de error
Figura 2.- Campos de mensajes.
2.- GENERALIDADES DE LOS CONTROLADORES DE DISPOSITIVOS POR BLOQUES EN
MINIX.
Los procedimientos principales de todas las tareas de E/S tienen una estructura similar. Minix
Tiene al menos tres tareas de...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Drivers
  • Drivers
  • Drivers
  • DRIVERS
  • Drivers
  • Drivers
  • Drivers
  • drivers

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS