In order for a device that’s plugged into a computer to do anything, the computer (and therefore operating system) needs to be able to send and receive instructions to/from the device. With the sheer amount of devices out there it would be an impossible task for an operating system to support every single instruction for every single device, therefore the work is split up.
The operating system developers publish that their OS will call instructions ABC, and look for instructions XYZ. It is then up to the device manufacturers to write some kind of software that sends/receives these instructions and translates them into instructions that the device can understand and vice versa. Instead of each OS developer trying to program for 1000 printers and 3000 wireless keyboards (and still missing some), each device manufacturer simply develops 3 drivers (one for each major OS) and it becomes much easier to handle. This also frees up device manufacturers to add extra features and settings that the user can configure as well.
When it comes to video card drivers it’s no different. The graphics card will have instructions that make it run and those instructions frequently change with each new card, yet the OS needs to still be able to communicate with them. The drivers include the new instructions, as well as optimizations to how the existing instructions are translated.
Latest Answers