Mikro jedro

Da bi zmanjšali jedro, je potrebno vse manj pomembne strežnike postaviti izven jedra (file servers, networking servers...). Tako postane kernel je majši, bolj vodljiv in lažji za razhroščevanje. S tem pa pridobimo tudi druge prednosti:

  • dodajamo lahko nove storitve in spreminjamo sedanji gostiteljski proces brez, da bi se dotikali jedra,
  • lahko emuliramo multi-operacijske sisteme na vrhu danega jedra; ena izmed verzij Mach kernela je uporabljala UNIX emulacijski strežnik izven kernel prostora.
Mikrokerneli imajo eno večjo slabo stran. Sistemski klici, ki obsegajo strežniški proces zahtevajo štiri "context-switche" namesto dveh.
  1. Uporabnikov proces preklopi kontekst v kernel,
  2. kernel analizira zahtevo in preklopi kontekst v strežniški proces,
  3. strežniški proces vrne kontekst v kernel,
  4. kernel vrne kontekst uporabniškemu programu.

Mikrojedro bi bila rešitev, če bi bilo možno poceniti "context switches" drugače rečeno, če preklapljanje kontekstov (preklop med enim in drugim procesom pomeni shranjevanje in obnavljanje stanj procesorja) ne bi vzelo toliko časa.