Jonathan Love

Search IconIcon to open search


The program/library that handles various read/write operations and converts it to the actual on-the-wire instructions that will control the chipset in the target hardware (e.g over the IO Ports or Memory Maps set up via ACPI or PCI)

A lot of hardware is expected to follow certain standards (e.g. a standard like USB, ACPI, PCI) which will dictate a common set of instructions that can be used with that compliant hardware - so it can be possible to write generic drivers for a class of devices.

In Linux, most device drivers are statically-linked into the kernel, but the kernel can be extended with Modules

Device Types

There are three main kinds of devices:

Char Devices

Block Devices

Network Devices

Interactive Graph