Microkernel
Een microkernel is een minimalistische kernel die is ontworpen om zo klein mogelijk te zijn. Deze bevat alleen de basiscode die nodig is om met hardware te communiceren en een besturingssysteem te laden.
De meeste moderne kernels, die soms "monolithische kernels" worden genoemd, bevatten enkele miljoenen regels code. De Linux 3.0-kernel bevat bijvoorbeeld meer dan 15 miljoen regels. Microkernels bevatten daarentegen doorgaans minder dan 10.000 regels code. Ze kunnen klein blijven doordat ze de meeste systeemprocessen in de gebruikersmodus laden in plaats van in de kernel zelf.
Een monolithische kernel kan apparaatstuurprogramma's, ondersteuning voor bestandssystemen en communicatie tussen processen (IPC) protocollen voor toepassingen bevatten. Een microkernel bevat alleen basisprotocollen voor systeem-IPC en functies voor geheugenbeheer. Al het andere wordt in de gebruikersmodus geladen (wanneer een gebruiker zich aanmeldt). Hierdoor blijft de kernel klein en biedt deze ook een modulair type besturingssysteem, omdat aangepaste stuurprogramma's en bestandssystemen door de kernel kunnen worden geladen.
Microkernels waren in de jaren 80 populair vanwege de beperkingen op het gebied van geheugen en opslag van vroege computersystemen. Hoewel ze nog steeds voor sommige serverbesturingssystemen worden gebruikt, gebruiken de meeste belangrijke besturingssystemen, zoals Windows en OS X, monolithische kernels.
Test je kennis