Device Driver in computing refers to a special kind of software program or a specific type of software application which controls a specific hardware device that enables different hardware devices for communication with the computer’s Operating System
A device driver communicates with the computer hardwares by computer subsystem or computer bus connected to the hardware.
Device Drivers are very essential for a computer system to work properly because without device driver the particular hardware fails to work accordingly means it fails in doing a particular function/action for which it has been created.
In a very common way most term it as only a Driver also when someone says Hardware Driver that also refers to this Device Driver.
Working of Device Driver :
Device Drivers depend upon the Operating System’s instruction to access the device and performing any particular action. After the action they also shows their reactions by delivering output or status/message from hardware device to the Operating system.For Example a printer driver tells the printer in which format to print after getting instruction from OS, similarly A sound card driver is there due to which 1’s and 0’s data of MP3 file is converted to audio signals and you enjoy the music. Card reader, controller, modem, network card, sound card, printer, video card, USB devices, RAM, Speakers etc need Device Drivers to operate.
The following figure illustrates the interaction between user, OS, Device driver and the devices:
Types of Device Driver:
For almost every device associated with the computer system there exist Device Driver for the particular hardware.But it can be broadly classified into two types i.e.,
- Kernel-mode Device Driver –
This Kernel-mode device driver includes some generic hardwares which loads with operating System as part the OS these are BIOS, motherboard, processor and some other hardwares which are part of kernel software. These includes the minimum system requirement device drivers for each operating system.
- User-mode Device Driver –
Other than the devices which are brought by kernel for working of the system the user also bring some devices for use during the using of a system that devices needs device drivers to functions those drivers falls under User mode device driver. For example user needs any plug and play action that comes under this.
Virtual Device Driver :
There are also virtual device drivers(VxD), which manages the virtual device. Sometimes we use same hardware virtually at that time virtual driver controls/manages the data flow from different application used by different users to the same hardware.
It is essential for a computer to have the required device drivers for all its parts to keep the system running efficiently.Many device drivers are provided by manufactures from beginning and also we can later include any required device driver for our system.
Don’t stop now and take your learning to the next level. Learn all the important concepts of Data Structures and Algorithms with the help of the most trusted course: DSA Self Paced. Become industry ready at a student-friendly price.
- Purpose of an Interrupt in Computer Organization
- Difference between Android 1.0 and Android 7.0
- Difference between Android 1.0 and Android 7.1
- Difference between Android 1.0 and Android 7.1.1
- Difference between Android 1.0 and Android 7.1.2
- Difference between Android 1.0 and Android 8.0
- Difference between OpenSUSE and Fedora
- Difference between OpenSUSE and Ubuntu
- Difference between Android 1.0 and Android 8.1
- Difference between Android 1.0 and Android 9
- Difference between Android 1.0 and Android 10
- Difference between Android 1.1 and Android 1.5
- Difference between OpenSUSE and Linux Mint
- Difference between Android 1.1 and Android 1.6
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to firstname.lastname@example.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.