Driver

image of devices updating on an operating system.

What is a driver?

A driver is a program that enables communication between an operating system (OS) and a hardware component or software application. Every computer uses multiple drivers to control the various installed hardware components and applications.

Without these drivers, the hardware and software will not function properly, and in some cases may not be able to function at all. There are two primary types of drivers: device drivers and software drivers.

How does a driver work?

Drivers are files that send requests from an OS to hardware or applications to instruct them on how to function. The drivers translate the communications from the OS into a format that is understandable by the hardware or application.

Device drivers

Device drivers are designed to communicate between an OS and a device. These drivers are typically created by the same company that manufactured the device. However, when a device driver is  are created by a third party, it is designed according to a published hardware standard.

Not all device drivers communicate directly with the device itself. In some cases, there are several drivers layered in a stack that enable communication. The drivers on each end of the stack will communicate directly with either the device itself or the OS. The function driver communicates directly with the device. The drivers in between manipulate the communication into different formats that can be understood by the machine. These are called filter drivers.

What devices use drivers?

The vast majority of devices and software that connect to a machine require a driver to operate. Here are some of the most common devices that require drivers:

Software drivers

Unlike device drivers, software drivers are not associated with hardware devices. These programs enable communication between OS and software applications. The main purpose behind software drivers is to enable or disable access to protected data that is only available to programs in kernel mode. As a result, software drivers virtually always run in kernel mode.

Kernel mode vs. user mode

Both device and software drivers have the ability to run in both kernel mode or user mode. User mode is the general-purpose option and is used to carry out most communication. It also has the benefit of offering better stability than kernel mode.

Kernel mode is primarily used by the device’s core operating system components for accessing protected data. Drivers in kernel mode are implemented as discrete, modular components with well-defined functionalities. These drivers are also preferred for low-latency networking applications.

Virtual device drivers

Virtual device drivers are relatively new technology. They use virtualization technology to emulate a hardware device in virtualized environments on hybrid or cloud networks. They give guest operating systems the illusion of accessing hardware.

Updating drivers

Drivers are often updated by the manufacturer for multiple reasons. Manufacturers often discover glitches or errors called bugs that can be fixed with an update. Updates can be used to add new features to a device or increase its performance. Security patches are also implemented through updates to remove vulnerabilities.

 

Vangie Beal
Vangie Beal is a freelance business and technology writer covering Internet technologies and online business since the late '90s.

Top Articles

The Complete List of 1500+ Common Text Abbreviations & Acronyms

From A3 to ZZZ we list 1,559 SMS, online chat, and text abbreviations to help you translate and understand today's texting lingo. Includes Top...

Windows Operating System History & Versions

The Windows operating system (Windows OS) refers to a family of operating systems developed by Microsoft Corporation. We look at the history of Windows...

How to Create a Website Shortcut on Your Desktop

Website Shortcut on Your Desktop reviewed by Web Webster   This Webopedia guide will show you how to create a website shortcut on your desktop using...

Generations of Computers (1st to 5th)

Reviewed by Web Webster Learn about each of the 5 generations of computers and major technology developments that have led to the computing devices that...

SAP Software

SAP is an end-to-end enterprise solution provider specializing in enterprise resource...

Chief Operating Officer (COO)

The chief operating officer (COO) is a member of a company's senior executive...

Kanban

Kanban is a workflow management method intended to define, manage, and improve services...