Glossary · Automation software engineering and architecture
Device driver
Also known as: Driver
German: Gerätetreiber
In computing, a device driver is software that allows an operating system or runtime to control a hardware device, such as a network interface, fieldbus card, I/O module or camera, by translating generic requests into device-specific operations and handling interrupts from the device.
- Software engineering
In one sentence
A device driver lets an operating system or runtime control a hardware device by translating generic requests into device operations.
Example
The industrial PC needs the vendor's device driver for its EtherCAT master card before the soft PLC runtime can access the connected drives.
Explained in context
Context cards connect this term with others to answer one question. Also in British English and German.
How it applies
- Engineering: Drivers often run with high privileges, for example as a Kernel module, so defects can crash the whole system. Real-time drivers must also keep interrupt latency and execution time bounded.
- Maintenance: Operating system updates can require new driver versions. Compatibility between driver, operating system, firmware and application must be checked before updates are rolled out in the field.
- Documentation: Installation guides should list supported driver versions per operating system, installation steps and how to verify that the driver works. Release notes should state driver changes, because they often explain changed timing or diagnostics.
Device driver vs. firmware
A device driver runs on the host computer and talks to the device. Firmware runs on the device itself. Both must be compatible, and updates to one may require updates to the other.
A Communication driver in SCADA or HMI software is a protocol-level component, often built on top of operating system device drivers.