A device driver is a component that a computer’s operating system uses to interact with a hardware device, such as a network adapter or modem. A driver interacts with the device through a communications subsystem to which the hardware connects. The operating system or other computer program calls a function in the driver to execute commands on the device.
The computer’s operating system cannot interact with a device if its driver is not properly installed and configured on the computer. Device drivers act as a translator between the operating system and hardware device. They are dependent on hardware and vary according to the operating system on the computer. Installing the wrong type of device driver that does not work with the operating system may cause damage to the computer’s hardware.
If poorly written devices are installed into a computer, they may cause the system to crash. Microsoft has made an effort to prevent this kind of damage owing to poorly written device drivers by developing a new framework for driver development, which includes user-mode driver framework and the kernel-mode driver framework. The former encourages the development of user-mode drivers, while the latter encourages development of kernel-mode drivers.
There are drivers for almost every computer device and peripheral such as mouse, keyboard, hard disk drive, network interface cards, floppy disk drives, network adapters, SCSI adapters, sound cards, printers and modems.