special programs that allow communication between the operating system and the device (including attached peripheral devices)
utility software used by the operating system to communicate with peripheral devices.
programs designed for an end user to do a particular task, such as word-processing and spreadsheet programs