Il sistema operativo realizza un’interfaccia uniforme ai dispositivi, fornendo alle applicazioni un metodo per gestire l’hardware senza doverne conoscere i dettagli.
La gestione dei dispositivi avviene in un modo che rimane trasparente al programma e gli consente di preoccuparsi solo delle operazioni logiche e non di come queste debbano poi essere realizzate in pratica. Vengono usati dei programmi chiamati driver, specifici per ogni periferica, che fanno da intermediari tra le operazioni ad alto livello richieste dai programmi e l’invio di segnali elettrici all’hardware (gestiscono l’interfaccia, cioè lo scambio di informazioni e dei segnali di controllo; permettono di stabilire per esempio se il dispositivo è pronto per inviare o ricevere dati o se si è verificato un errore sul dispositivo); ogni volta che il programma deve accedere all’hardware viene richiamato il driver opportuno. I driver sono moduli separati dal sistema operativo in modo che possano essere modificati e che possano essere aggiunti nuovi driver per nuovo hardware (anche più recente dei sistemi operativi).