The software that is embedded in a hardware device and controls how the device interacts with the operating system.