Upravljački program (engleski: device driver ili samo driver) jest računarski program koji rukuje ili upravlja nekom vrstom uređaja koja je spojena na računar.[1] Upravljački program pruža softverski interfejs za hardverske uređaje tako da operativni sistem i drugi programi mogu pristupiti hardverskim funkcijama bez potrebe da imaju sve specifičnosti samog hardvera.
Upravljački program komunicira s uređajem putem računarske sabirnice ili komunikacijskom podsistema na koji se hardver spaja. Kada pozivajući program pozove podrutinu u upravljačkom programu, on izdaje naredbu uređaju. Kada uređaj pošalje podatke nazad upravljačkom programu, on može pozvati rutine u izvornom pozivajućem programu.
Upravljački programi su specifični za operativni sisteme i sam hardver i obično pružaju obradu prekida potrebnu za asinkrone hardverske interfejse.[2]