small programs that tells the operating system how to work with a certain peripheral device