A device driver is a type of software program that controls a specific hardware device attached to a computer.
Device drivers are usually small programs, but they are essential, as they provide the interface between the computer and other hardware devices, such as the mouse, keyboard, monitor, storage devices, audio and video cards, and so on. For example, the printer driver tells the operating system and, by extension, whatever program you have the thing you want to print open in, exactly how to print the information on the page.
Device drivers are like translators between the program you're using and a device that the program needs to utilize, such as a hard drive for saving a file. In most cases, the hardware and the software were created by different companies and speak completely different languages, so the driver is needed, as a translator, to allow them to communicate.
It is because of drivers that most software programs don't need to know how to work directly with the hardware on your computer. Otherwise, software programs would have to be custom made for your computer and the hardware that is connected to your computer.
Device drivers usually enjoy a high level of privilege within the operating system's runtime environment, and some are linked directly to the operating system kernel, a portion of the OS that remains memory resident to handle execution for all other code, including device drivers. Among the tasks handled by device drivers include relaying requests for device access and actions from the OS and its active applications to their respective hardware devices, as well as delivering outputs or status messages from the devices to the OS, which passes it on to the applications.
Thus, device drivers are required for the computer to be able to interface and interact with specific hardware devices connected to it. Drivers define the messages and mechanisms by which the OS and applications can access the device, or make requests of the device, as well as handling responses.
In early computers, device driver software would usually be written in assembly language, a low-level language that can access the hardware and CPU instructions directly. However, most modern device drivers are written in C or C++, as these languages offer access to both low-level instructions and more complex program and data structures.
Most often device drivers are preinstalled on the computer, packaged with the device, or made available on the device manufacturer's website, which will include updates. Open-source drivers are also available, however.
The focus of this category is on computer device drivers.
 
 
Recommended Resources
Originally known as Symantec Ghost Trainers, the company formed the Universal Imaging Utility (UIU), which works with any Windows operating system solution, including SCCM, MDT, Ghost, WDS, DISM, Altiris, and KACE, to automatically deliver every applicable driver to any PC, regardless of manufacturer or model, for true hardware independent imaging. Used with an existing deployment solution, UIU gives access to a fully-maintained driver database. User guides are posted.
https://www.bigbangllc.com/
Owned by AbeApps, Driver Restore offers driver update software for PCs. Using scanning technology, its service can determine which drivers are in need of updating in order to maximize the performance of the PC, updating them through its database of millions of device drivers, including legacy drivers. Compatible with recent versions of the Microsoft Windows platform, Driver Restore is an update service that performs scanning for outdated drivers, providing options for updating.
https://driverrestore.com/
For monthly subscribers, Driver Support will catalog a member's hardware devices and scour the manufacturer's databases to retrieve only the drivers the PC actually needs. Among the features of its services are machine matching, update choice, driver monitoring, checking for updates, integration API, real-time service, and archiving of configurations. Supported are recent versions of the Microsoft Windows operating system. Answers to common driver problems are included.
https://www.driversupport.com/
Offering a free membership, as well as two premium memberships, the site offers a collection of device drivers. The free plan allows for downloading up to five drivers per week, with some other limitations, while premium membership adds additional features and access, including direct downloads. Included are a driver download and automatic update utility for all driver devices, available for recent versions of Windows. Otherwise, drivers can be found by the manufacturer, device, or OS version.
https://www.driverguide.com/
Hosted on FlashTux, a host for free OS projects, ECiAdsl is a free driver for USB ADSL modems embedding a Globespan chipset, including GS7070 and GS7470, available under the terms of the GNU General Public License. Its features are highlighted, along with screenshots, documentation, a FAQ, user tutorial, and a full list of modems that are supported, possibly supported, and known to be not supported by the driver. A developer mailing list is included.
https://flashtux.org/eciadsl/
Foo2zjs is an open-source printer driver for printers that use the Zenographics ZjStream wire protocol for their print data, such as the Minolta/QMS Magicolor 2300 DL, the Konica Minolta Magicolor 2430 DL, HP LaserJet 1020, HP LaserJet Pro M12a/M12w, HP LaserJet Pro P1102, HP LaserJet Pro P1102w, or HP LaserJet Pro CP1025w, often referred to as WinPrinters or GDI printers, and others which are listed here. The driver uses Ghostscript to perform image processing functions.
http://foo2zjs.rkkda.com/
Previously known as Gimp-Print, Gutenprint is a collection of free software printer drivers for use with UNIX spooling systems, such as CUPS, Lpr, and LPRng, offering printing services for Unix-like systems that include Linux, macOS, RISC OS, and Haiku. Originally a plugin for GIMP, it later became a more general tool for use by other programs and operating systems. Its features are listed, along with documentation, screenshots, a list of supported printers, and development notes.
http://gimp-print.sourceforge.net/
Intel is a multinational technology company and the world’s second-largest manufacturer of semiconductor chips and the inventor of a line of microprocessors found in most PCs, as well as the supplier of processors for Apple, Lenovo, HP, and Dell computers, and a manufacturer of motherboard chipsets, network interface controllers, integrated circuits, graphics chips, and other devices. Drivers and software updates for Intel hardware are available from its site.
https://downloadcenter.intel.com/
Founded in 2013, the Israeli company specializes in automotive software and device driver support. Its device driver products include WinDriver, a PCI/USB device driver development tool intended to support any device, regardless of its silicon vendor, offering versions for Windows, Linux, WinCE, USB, and PCI. Other products are DriverCore, a collection of USB PC connectivity drivers for various devices, and MediaCore, offering connectivity for multimedia players.
https://www.jungo.com/
Available for free, with no registration requirement, the site offers Windows device drivers, user manuals, and service manuals. Drivers may be found through its search functions, by manufacturer, or by device category, with drivers for video cards, printers, monitors, network cards, sound cards, motherboards, and other computer devices and accessories. User and service manuals are available for several computers and computer devices, as well as informational articles.
https://www.nodevice.com/
Developed by ZEDOnet, which develops and sells Linux drivers for Brother, Canon, Epson, and HP printers, TurboPrint is a high-end printing system and printer driver for Linux, offering extensive driver support. A thirty-day trial offer is available, and the product may be purchased online. A manual, support forum, FAQ, screenshots, and a version history are posted to the site, along with other products from ZEDOnet.
https://www.turboprint.info/
WinDrivers is a user support forum for Windows tech support and drivers. Powered by vBulletin, only registered members may participate in discussions, although anyone may read the content of discussions. Chief category topics include device drivers, operating systems, office and other software applications, and a section for technicians only, along with a lighter area for gaming and off-topic discussion. New posts are highlighted, and other resources include a FAQ and a calendar.
http://www.windrivers.com/