L4

A HupWiki-ből...

Az L4 napjaink talán legmodernebb és legígéretesebb mikrokernele. Mindezt főképpen annak köszönheti, hogy tervezője, Jochen Liedtke merőben új alapokra építkezett az előző mikrokernel-generációk tapasztalataiból okulva. 1995-ben kezdték el fejleszteni a GMD-n. Három tényezőt tekint fontosnak és kezel: a címtereket, a szálakat és a folyamatvezérlést.

Ez a kernel nem csak annak köszönheti impozáns eredményeit, hogy kezdetben teljesen assembly-ben írták (ez az ún. "LemonPip" verzió). A fejlesztés során megpróbálták fokozatosan a meglévő kódot karbantarthatóvá tenni, s így döntő arányban már C++-ban áll a fejlesztők rendelkezésére ("OrangePip"). Emellett számos processzortípust támogat (IA-32, IA-64, PowerPC, Alpha, MIPS), illetve fog támogatni a jövőben (AMD64, ARM, Power4, UltraSPARC).

Nem is véletlen, hogy C++-ban írták, mivel ebben a kernelben igen erősek a törekvések az objektum-orientált felépítésre. Tehát a szerverek szinte önálló objektumoknak tekinthetőek és üzenetekkel kommunikálnak egymással. Valójában a kernel feladata nagyon leegyszerűsített, és csak üzenetek kezeléséből áll, valamint egy minimális többszálúság nyújtásából. Erre mindössze 7 rendszerhívást (~12 kB-nyi kód) implementáltak.

Ha bosszantani akarjuk a Mach alkotóit és rajongóit akkor azt is mondhatjuk, az L4-nak annyi köze van a korábbi mikrokernelekhez, hogy javítja azok hibát, ill. fel sem merülnek benne. Ám hasonlóan mondjuk a Mach-hoz, szintén rendelkezik egy nagyon rugalmas IDL-el, amely nagyon megkönnyíti a mikrokernelek feletti szerverek elkészítését. Ezt a saját fordítója, az IDL4 testesíti meg.


Jelen pillanatban is több verziója létezik, ez közül a legnépszerűbb az L4Ka, amelynek a legfrissebb verziója a "Pistachio" fedőnevet viseli. Felette a Karlsruhei Egyetem és az New South Wales Egyetem bábáskodik közösen.


Bővebb információk a következő linkeken találhatóak:

http://www.l4ka.org
http://www.l4linux.org
http://www.l4hq.org