Az előző cikkben elmagyaráztuk , hogy mi a Linux kernel, most pedig részletesen bemutatjuk, hogy milyen funkcionális feladatokat lát el. A monolitikus Linux operációs rendszer kernele végzi a legszélesebb körű feladatokat. A bejövő rendszerhívások feldolgozása a legfelső szinten történik. Ezek a hívások jelentik az interfészt a rendszermag és a felhasználói alkalmazások között. A hardveres jelek és megszakítások kezelése az alsó szinten történik.
A rendszermag feladatai azonban nem csak a megszakítások kezeléséből állnak. Tartalmazza az eszközvezérlő programokat is. Az eszközökről érkező jelek feldolgozásához meghajtókra van szükség. A kernel egy nagyobb részét ezekhez rendelik. Ezek egy része bináris fájlok formájában van. A kernel zárt meghajtók nélküli változata a Linux-libre, a gyakorlatban nem olyan könnyen használható, mert nem mindig lehet csak nyílt meghajtókkal rendelkező komponensekre épülő PC-t építeni.
A kernel egyéb funkcionális feladatai absztrakciókkal dolgoznak. Virtuális szálakat egy virtuális szál hoz létre, egy memóriakezelő kiosztja és elkülöníti a RAM egy részét kifejezetten a folyamat számára, egy virtuális fájlrendszer egyetlen helyet képez a fájlok tárolására, a foglalatokat egy hálózati modul hozza létre. Így teremtődnek meg a magas szintű biztonság biztosításának feltételei. A folyamatok közötti interakció rendszere biztosítja, hogy ne legyenek konfliktusok az azonos számítógépes erőforrások elérésekor, és biztosítja a folyamatok közötti adatcserét is.
A felhasználói szoftver oldaláról nézve úgy néz ki, mint a fizikai hardver, azzal a különbséggel, hogy a processzor és a RAM nem közvetlenül, hanem rendszerhívásokon keresztül kommunikál. A /dev
könyvtár a perifériák szimbolikus és blokkhivatkozásait tartalmazza. A blokkhivatkozások sajátossága, hogy csak meghatározott méretű blokkokkal működnek.
Annak ellenére, hogy a kernel minden folyamatot irányít, semmit sem csinál maga, szüksége van a felhasználói szoftverekre és az általuk végrehajtott folyamatokra. Az alapszoftverek közé tartoznak a GNU segédprogramok: nehéz elképzelni bármilyen Linux-disztribúciót ezek nélkül. Ilyen például a Bash
héj, amely lehetővé teszi a konzolon történő parancsbevitelt.