Az operációs rendszerek felépítése

Az operációs rendszerek alapvetően három részre bonthatók: a felhasználói felület (a shell, amely lehet egy grafikus felület, vagy egy szöveges), alacsony szintű segédprogramok és a kernel (mag) amely közvetlenül a hardverrel áll kapcsolatban.

Vannak olyan operációs rendszerek, melyekben a kernel (mag) és a shell (héj) különválnak, így lehetőség nyílik ezek kombinációjára. Más rendszereknél, mint például a Windowsnál ez a különválasztás mind elméleti, mind gyakorlati szempontból nehezebb.

Négyféle kerneltípus ismert, az úgynevezett

- monolitikus kernel a

- hibrid kernel

- mikrokernel, és a kevésbé ismert

- exokernel.

A Unix monolitikus kernelre épül, ami mára elavultnak tekinthető, bár szerverek esetén szerencsés az ilyen. Ezeken a rendszereken nem különülnek el alapvetően a folyamat vezérlési, tárolási feladatok, illetve a rendszerhívások. A mikrokernel annyira kicsi, amennyire lehet, gyakorlatilag az egyetlen feladata az erőforrások újraelosztása az alkalmazások között. A Linux kernele hibrid kernel, azonban a programkód fordításakor megszabhatjuk, hogy mely részek kerüljenek betölthető állapotba, illetve melyek ne, így lehetőségünk van akár monolitikus kernel készítésére is, ami különösen szerver operációs rendszerek esetén célszerű. A Windows által használt hibrid kernel is ránézésre egy mikro kernel, de itt kernel módban fut az üzenetkezelés (Application IPC), és az eszközillesztők. (vö.: A Windows Vista új drivermodelljén egyes elemek átkerültek a felhasználói rétegbe)

A kernel feladatai

- Ki- és bemeneti eszközök kezelése (billentyűzet, képernyő stb.)

- Programok, folyamatok futásának kezelése

- Indítás, futási feltételek biztosítása, leállítás

- Memória-hozzáférés biztosítása

- Processzor idejének elosztása

- Virtuális gép mutatása a nemkívánt taszkok felé (pontosabban a hardver által biztosított lehetőségek szoftver-kiegészítései)

- Háttértárolók kezelése

- Rendszerhívások kiszolgálása

- Fájlrendszer

- egyéb

A shell feladatai

- Kapcsolattartás a felhasználóval (felhasználói felület)

- Alkalmazások futásának kezelése (indítás, futási feltételek biztosítása, PIT leállítás)

Vissza az operációs rendszerekhez