Vhodno-izhodni sistem operacijskega sistema sestavljajo:
enota za upravljanje s pomnilnikom - medpomnenje (buffering), predpomnenje (caching), čakalna vrsta (spooling)
splošni vmesnik gonilnikov
gonilniki za specifične naprave.
Glavna naloga v/i podsistema je podpora komunikaciji med procesorjem in v/i napravami. Komunikacija je realizirana preko gonilnikov naprav. Naloga gonilnika je skrivanje posebnosti določene v/i naprave in prikaz standarnega splošnega vmesnika gonilnikov, ki ga preostali deli operacijskega sistema znajo uporabljati. Na ta način lahko operacijski sistem komunicira z različnimi napravami na enak način.
V razmislek
Ali ste že kdaj nameščali gonilnike za poljubne v/i naprave (tiskalnike, brezžične kartice, glasbene kartice)? Zakaj so za isti tip v/i naprav včasih gonilniki zelo obsežni, včasi pa prav majhni?
Recimo, da je velikost npr. kartice obratno sorazmerna velikosti gonilnika ali pa se tudi vprašajmo - ali vsi gonilniki npr. za tiskalnike nudijo enake možnosti?