DICCIONARIO DE INFORMÁTICA Y TECNOLOGÍA
  ¿Qué significa controlador de dispositivo? - Información sobre controlador de dispositivo

Definición de controlador de dispositivo (manejador o driver)

Alegsa.com.ar
Diccionario tecnología
PCs
controlador de dispositivo
Leandro Alegsa (Contacto) 2016-06-23
Anuncios

Un controlador de dispositivo (device driver), es una pieza de software que permite al sistema operativo y programas interactuar adecuadamente con dispositivos de hardware anexados a la computadora.

Un controlador provee la interfaz de software apropiada para el dispositivo de hardware, permitiendo que el software utilice las funciones del hardware sin la necesidad de conocer detalles precisos del mismo.

El controlador suele comunicarse con el dispositivo a través del bus de la computadora o del subsistema de comunicaciones al cual el hardware se conecta.

Un controlador es dependiente de un hardware y un sistema operativo específicos.


Función del controlador o driver de un dispositivo

El objetivo de los controladores es permitir simplificar la programación de las aplicaciones, al funcionar como "traductor" entre el dispositivo de hardware y la aplicación o el sistema operativo que lo usa. Los programadores pueden escribir códigos de alto nivel independientemente del dispositivo de hardware específico que se emplee en estos.

Los comandos de alto nivel que escribe el programador son tomados por el controlador del dispositivo, que los traduce en una serie de comandos de bajo nivel específicos para el dispositivo de hardware que le corresponde. El dispositivo de hardware también puede solicitar información al programa, siempre pasando por el controlador.


¿Cómo detecto, actualizo o instalo controladores?

Generalmente para conseguir un controlador se debe visitar el sitio web oficial del producto de hardware. Probablemente allí tenga alguna sección llamada Download, Descargas o Drivers, donde deberemos buscar el modelo de nuestro producto y el sistema operativo que usamos.

Antiguamente, cuando pocos accedían a internet, los dispositivos traían un disquete o un disco óptico con todos los controladores necesarios para ser instalados.

En Windows, para saber detalles de cada controlador de nuestro hardware debemos ingresar al Panel de Control - Administrador de dispositivos. Allí podremos actualizarlos y solucionar errores.


Aplicaciones comunes de controladores

Los controladores pueden servir para:

- Impresoras
- Adaptadores de video
- Adaptadores de red
- Tarjetas de sonido
- Buses locales
- Escáneres.
- Cámaras digitales
- Buses de Entrada/salida de bajo ancho de banda (para dispositivos como punteros, teclados, USB, etc.)
- Dispositivos de almacenamiento: buses de disco (ATA, SATA, SCSI) de discos duros y otras unidades.
- Implementar soporte para diferentes sistemas de archivo.


Desarrollo de controladores

Escribir un programa-controlador de dispositivo requiere una compresión profunda de cómo el hardware y el software trabajan en una determinada plataforma. Como los controladores requieren acceso a bajo nivel de las funciones del hardware para funcionar, en general estos operan en un entorno muy privilegiado y pueden entonces causar problemas operacionales al sistema si algo va mal. Esto los diferencia de los programas "a nivel de usuario", que pueden ser parados sin afectar mayormente al resto del sistema (al menos esto es así en los sistemas operativos más modernos).

Usualmente la tarea de programar drivers recae en las compañías desarrolladoras del hardware. Esto es así porque tienen mejor información que otros sobre el diseño de sus propios dispositivos de hardware. Además es del propio interés de dichas empresas garantizar el correcto funcionamiento de sus productos.

Generalmente el controlador de dispositivo lógico (logical device driver o LDD) es escrito por el desarrollador del sistema operativo, en tanto el controlador de dispositivo físico (physical device driver o PDD) es implementado por el desarrollador del dispositivo.

En ocasiones los desarrolladores de hardware no escriben controladores para algunos sistemas operativos, usualmente aquellos de código abierto. En estos casos son los desarrolladores de los sistemas operativos quienes pueden intentar crear los controladores apropiados.

En el caso de Windows, su empresa desarrolladora (Microsoft) intentó reducir problemas de inestabilidad creando un framework para el desarrollo de controladores llamado Windows Driver Foundation o WDF. Según especialistas en el tema los resultados fueron pobres.

El WDF incluye a su vez dos frameworks:

- User-Mode Driver Framework (UMDF): permite desarrollar ciertos tipos de controladores para comunicarse con sus dispositivos desde un modo-usuario. Si existe algún mal funcionamiento, esto no causará inestabilidad a todo el sistema.

- Kernel-Mode Driver Framework (KMDF): permite desarrollar controladores en modo-kernel, pero intentando proveer implementaciones estándar de funciones que son conocidas por causar usualmente problemas, como cancelación de operaciones de Entrada/Salida, administración de energía, soporte de plug and play, etc.

Apple también tiene un framework de código abierto para el desarrollo de controladores en Mac OS X llamado I/O kit.

En tanto, en entornos Linux, los programadores pueden desarrollar controladores como parte del kernel, como módulos cargables separados, o como controladores modo-usuario.

En Windows los archivos .sys y en Linux los módulos .ko contienen controladores de dispositivos cargables. La ventaja de estos controladores "cargables" es que pueden abrirse sólo cuando son necesarios, salvando así memoria del kernel.


APIs para desarrolladores

Existen múltiples APIs que permiten a desarrolladores implementar sus controladores para áreas específicas de un sistema operativo, facilitando así el trabajo. Algunos ejemplos son:

- Windows Display Driver Model (WDDM): arquitectura de controladores de pantalla gráfica para Windows Vista, Windows 7 and Windows 8.

- Unified Audio Model (UAM)

- Windows Driver Foundation (WDF): explicado anteriormente.

- Windows Driver Model (WDM)

- Network Driver Interface Specification (NDIS): un API estándar de adaptador de red

- Advanced Linux Sound Architecture (ALSA): la interfaz para el controlador de sonido en Linux

- Scanner Access Now Easy (SANE): interfaz de dominio público para escáneres

- I/O Kit: el framework de Apple para desarrollo de controladores para Mac OS X

- Uniform Driver Interface (UDI): un proyecto de interfaz de controladores multiplataforma





¿Mejoramos la definición?
Puntos: 3.7 (20 votos)






Respondemos tus consultas o comentarios a continuación:


¿Dudas? ¿necesita más información? Escriba y responderemos a tu email: clic aquí



 




Diccionario de informática
  Búsqueda por letras:
A - B - C - D - E - F - G - H - I - J - K - L - M - N - O - P - Q - R - S - T - U - V - W - X - Y - Z - 0,9
 
Búsqueda por categorías
: Almacenamiento - Aplicaciones - Audio - Compresión - Desarrollo web - Discos ópticos - Inteligencia Artificial - Memorias - Microprocesadores - Seguridad informática - Sistemas de archivos - Terminología de programación - UNIX - Windows - ver categorías

 
Búsqueda por palabras:





Preguntas
No escucho el audio tras actualizar Windows  - 2016-09-18

Solución al error código 10 del controlador de audio  - 2014-08-05

Todos los derechos reservados © 1998 - 2016 - ALEGSA - Santa Fe, Argentina.
Políticas del sitio web - Contacto - Publicidad