Applications
Because of the diversity of modern hardware and operating systems, drivers operate in many different environments. Drivers may interface with:
- printers
- video adapters
- network cards
- sound cards
- local buses of various sorts — in particular, for bus mastering on modern systems
- low-bandwidth I/O buses of various sorts (for pointing devices such as mice, keyboards, USB, etc.)
- computer storage devices such as hard disk, CD-ROM and floppy disk buses (ATA, SATA, SCSI)
- implementing support for different file systems
- image scanners
- digital cameras
Common levels of abstraction for device drivers include:
- for hardware:
- interfacing directly
- writing to or reading from a device control register
- using some higher-level interface (e.g. Video BIOS)
- using another lower-level device driver (e.g. file system drivers using disk drivers)
- simulating work with hardware, while doing something entirely different
- for software:
- allowing the operating system direct access to hardware resources
- implementing only primitives
- implementing an interface for non-driver software (e.g. TWAIN)
- implementing a language, sometimes quite high-level (e.g. PostScript)
Choosing and installing the correct device drivers for given hardware is often a key component of computer system configuration.
Read more about this topic: Device Driver
Related Subjects
Related Phrases
Related Words