software used to allow the operating system to communicate with hardware
allow the computer to communicate with various different hardware devices
the database, the database mgmt system, and the application programs that access the database through the database mgmt system