Mõned vanemad operatsioonisüsteemid sidusid GUI tihedalt kernelisse. Näiteks Windowsi ja Mac OS esimesed versioonid. Uuemad operatsioonisüsteemid on rohkem modulaarsed ja eraldavad GUI kernelist. Näiteks Mac OS X ja Windows NT-l põhinevad operatsioonisüsteemid. Paljud operatsioonisüsteemid lubavad kasutajatel ise valida või isegi luua oma GUI. X- Windows on laialdaselt kasutusel Unix-i põhistel süsteemidel samas GNOME ja KDE leidub sageli Linux süsteemidel. Seadmeajurid Seadmeajur on spetsiifiline tarkvara jupp, mis lubab suhelda riistvaraga. Tavaliselt sisaldab see liidest, mis lubab suhelda seadmega läbi arvuti siini või muu, mille külge seade ühendatud on, andes käske ja võttes vastu andmeid seadmelt ja teisest otsast on ühendus operatsioonisüsteemi või muu tarkvaraga. See on spetsiaalne seadmest sõltuv programm, mis on seotud ka operatsioonisüsteemiga, mille abil saavad teised programmid nähtamatult suhelda riistvara seadmega.
Mõned vanemad operatsioonisüsteemid sidusid GUI tihedalt kernelisse. Näiteks Windowsi ja Mac OS esimesed versioonid. Uuemad operatsioonisüsteemid on rohkem modulaarsed ja eraldavad GUI kernelist. Näiteks Mac OS X ja Windows NT-l põhinevad operatsioonisüsteemid. Paljud operatsioonisüsteemid lubavad kasutajatel ise valida või isegi luua oma GUI. X- Windows on laialdaselt kasutusel Unix-i põhistel süsteemidel samas GNOME ja KDE leidub sageli Linux süsteemidel. Seadmeajurid Seadmeajur on spetsiifiline tarkvara jupp, mis lubab suhelda riistvaraga. Tavaliselt sisaldab see liidest, mis lubab suhelda seadmega läbi arvuti siini või muu, mille külge seade ühendatud on, andes käske ja võttes vastu andmeid seadmelt ja teisest otsast on ühendus operatsioonisüsteemi või muu tarkvaraga. See on spetsiaalne seadmest sõltuv programm, mis on seotud ka operatsioonisüsteemiga, mille abil saavad teised programmid nähtamatult suhelda riistvara seadmega.