Ejemplos de controladores de dispositivos

En informática, un controlador de dispositivo es un programa informático que opera o controla un tipo particular de dispositivo que está conectado a un ordenador o autómata[1] Un controlador proporciona una interfaz de software a los dispositivos de hardware, lo que permite a los sistemas operativos y otros programas informáticos acceder a las funciones del hardware sin necesidad de conocer detalles precisos sobre el hardware que se utiliza.
Un controlador se comunica con el dispositivo a través del bus del ordenador o del subsistema de comunicaciones al que se conecta el hardware. Cuando un programa que llama invoca una rutina del controlador, éste emite órdenes al dispositivo. Una vez que el dispositivo envía datos de vuelta al controlador, éste puede invocar rutinas en el programa original que lo llamó.
El objetivo principal de los controladores de dispositivos es proporcionar abstracción actuando como traductor entre un dispositivo de hardware y las aplicaciones o sistemas operativos que lo utilizan[1] Los programadores pueden escribir código de aplicación de alto nivel independientemente del hardware específico que utilice el usuario final.
Por ejemplo, una aplicación de alto nivel para interactuar con un puerto serie puede tener simplemente dos funciones para “enviar datos” y “recibir datos”. En un nivel inferior, un controlador de dispositivo que implemente estas funciones se comunicaría con el controlador de puerto serie concreto instalado en el ordenador del usuario. Los comandos necesarios para controlar una UART 16550 son muy diferentes de los comandos necesarios para controlar un convertidor de puerto serie FTDI, pero cada controlador de dispositivo específico del hardware abstrae estos detalles en la misma (o similar) interfaz de software.

Controladores de dispositivos de windows

Es difícil dar una única definición precisa del término controlador. En el sentido más fundamental, un controlador es un componente de software que permite que el sistema operativo y un dispositivo se comuniquen entre sí.
Por ejemplo, supongamos que una aplicación necesita leer algunos datos de un dispositivo. La aplicación llama a una función implementada por el sistema operativo, y el sistema operativo llama a una función implementada por el controlador. El controlador, que fue escrito por la misma empresa que diseñó y fabricó el dispositivo, sabe cómo comunicarse con el hardware del dispositivo para obtener los datos. Una vez que el controlador obtiene los datos del dispositivo, los devuelve al sistema operativo, que a su vez los devuelve a la aplicación.
Por ejemplo, supongamos que necesitas escribir una herramienta que tenga acceso a las estructuras de datos del núcleo del sistema operativo, a las que sólo puede acceder el código que se ejecuta en modo kernel. Puedes hacerlo dividiendo la herramienta en dos componentes. El primer componente se ejecuta en modo usuario y presenta la interfaz de usuario. El segundo componente se ejecuta en modo kernel y tiene acceso a los datos centrales del sistema operativo. El componente que se ejecuta en modo usuario se llama aplicación, y el que se ejecuta en modo kernel se llama controlador de software. Un controlador de software no está asociado a un dispositivo de hardware.

¿qué hace un controlador?

En informática, un controlador de dispositivo (comúnmente conocido como driver) es un programa informático que opera o controla un tipo particular de dispositivo que está conectado a un ordenador.  Un controlador proporciona una interfaz de software para los dispositivos de hardware, lo que permite a los sistemas operativos y otros programas informáticos acceder a las funciones del hardware sin necesidad de conocer los detalles precisos del mismo.
Un controlador suele comunicarse con el dispositivo a través del bus del ordenador o del subsistema de comunicaciones al que se conecta el hardware. Cuando un programa que llama invoca una rutina del controlador, éste emite órdenes al dispositivo. Una vez que el dispositivo envía datos de vuelta al controlador, éste puede invocar rutinas en el programa original que lo llamó. Los controladores dependen del hardware y son específicos del sistema operativo. Suelen proporcionar el manejo de las interrupciones necesarias para cualquier interfaz de hardware asíncrona dependiente del tiempo.
Los controladores de dispositivos simplifican la programación al actuar como traductores entre un dispositivo de hardware y las aplicaciones o sistemas operativos que lo utilizan.  Los programadores pueden escribir el código de la aplicación de alto nivel independientemente del hardware específico que utilice el usuario final.

Qué son los controladores en los ordenadores portátiles

En informática, un controlador de dispositivo es un programa informático que opera o controla un tipo particular de dispositivo que está conectado a un ordenador o autómata[1] Un controlador proporciona una interfaz de software a los dispositivos de hardware, lo que permite a los sistemas operativos y otros programas informáticos acceder a las funciones del hardware sin necesidad de conocer detalles precisos sobre el hardware que se utiliza.
Un controlador se comunica con el dispositivo a través del bus del ordenador o del subsistema de comunicaciones al que se conecta el hardware. Cuando un programa que llama invoca una rutina del controlador, éste emite órdenes al dispositivo. Una vez que el dispositivo envía datos de vuelta al controlador, éste puede invocar rutinas en el programa original que lo llamó.
El objetivo principal de los controladores de dispositivos es proporcionar abstracción actuando como traductor entre un dispositivo de hardware y las aplicaciones o sistemas operativos que lo utilizan[1] Los programadores pueden escribir código de aplicación de alto nivel independientemente del hardware específico que utilice el usuario final.
Por ejemplo, una aplicación de alto nivel para interactuar con un puerto serie puede tener simplemente dos funciones para “enviar datos” y “recibir datos”. En un nivel inferior, un controlador de dispositivo que implemente estas funciones se comunicaría con el controlador de puerto serie concreto instalado en el ordenador del usuario. Los comandos necesarios para controlar una UART 16550 son muy diferentes de los comandos necesarios para controlar un convertidor de puerto serie FTDI, pero cada controlador de dispositivo específico del hardware abstrae estos detalles en la misma (o similar) interfaz de software.