Monolitikus rendszermag

A Wikipédiából, a szabad enciklopédiából

A monolitikus rendszermag egy operációsrendszer-architektúra, melyen az egész operációs rendszer alapszik úgy, hogy a kernelterületen működik kizárólag supervisor (felügyelő) módban.

A monolitikus különbözik más operációsrendszer-architektúráktól (mint pl. a mikrokernel architektúra)[1][2] abban a tekintetben, hogy kizárólag egy magas szintű virtuális felületet definiál a számítógép hardvere felett. Ez lehet primitivek egy halmaza vagy rendszerhívások azért, hogy végrehajtsák az operációs rendszer összes szolgáltatását, azaz a folyamatkezelést, párhuzamosságot, és memóriakezelést. Ehhez szükséges önmaga s egy vagy több eszközmeghajtó mint modul.

A monolitikuskernel-, mikrokernel- és hibridkernel-alapú operációs rendszerek felépítése

Betölthető modulok[szerkesztés]

A moduláris operációs rendszerek, mint pl. OS-9 s a legtöbb korszerű monolitikus operációs rendszer, mint pl. OpenVMS, Linux, BSD (és ezek változatai a FreeBSD, NetBSD, OpenBSD), és UNIX változatok, mint pl. a SunOS, és az AIX, azonkívül a MULTICS képes dinamikusan betölteni (s eltávolítani) a végrehajtható modulokat futásidőben. Az operációs rendszer e modularitása a bináris (kép) szinten van, s nem az architektúra szinten. A moduláris monolitikus operációs rendszereket nem szabad összekeverni az architekturális szintű modularitással, amely velejárója a mikrokernelű (ügyfél-kiszolgáló) operációs rendszereknek (s leszármazottja, melyeket néha hibrid kernelnek neveznek), amelyek mikrokernelt használnak, kiszolgálókkal (nem szabad összekeverni hibásan a modulokat a daemonokkal). Gyakorlatilag a dinamikusan betöltött modulok egyszerűen egy sokkal rugalmasabb módja az operációs rendszer képkezelésének futási idő alatt – ellentétben mintha újra kéne indítani más rendszerképpel. A modulok lehetővé teszik az operációs rendszer képességeinek könnyű kibővítését igény szerint. A dinamikusan betölthető modulok kevés többletköltséget jelentenek összevetve azzal, hogy a modult beépítették volna az operációsrendszer-képbe. Mindamellett sok esetben a modul dinamikus betöltése (szükség szerint) segít, hogy a megfelelő minimális mennyiségű kód tudjon futni a kernelterületen, pl. ha az operációs rendszer méretét minimalizálni szeretnénk a beágyazott rendszerekben vagy korlátos hardvererőforrásokban. Tehát egy eltávolított modult nem szükséges tárolni az amúgy is kevés rendelkezésre álló RAM-ban.

Monolitikus architektúrára példák[szerkesztés]

Megvalósítás Linuxban[szerkesztés]

A monolitikus rendszermag lényege a floders szintű láncolás s a secmod virtuális magrendszere. Kezdetekben az mnt – azaz médiakönyvtár mappaszintjéből működő emulált láncoltmappa-linkrendszer –, ami a fejlesztések során kapott kriptográfiai secmodot – ami egy titkosító-tömörítő programkimeneti állomány volt (lehetett volna akár ZIP, RAR, TAR.GZ, GZ, bármi) – ez mint a RAM-lemez, emulált mag szinten működött, gyakorlatilag hasonlított az első live rendszermag tulajdonságaihoz.

Kapcsolódó szócikkek[szerkesztés]

Jegyzetek[szerkesztés]

  1. Modular system programming in Minix3
  2. Server-Client, or layered structure. The Design of PARAS Microkernel. (Hozzáférés: 2009. július 15.)