Hybridkernel
Ein Hybridkernel (auch Makrokernel) ist ein Kompromiss zwischen einem Mikrokernel und einem monolithischen Kernel, bei dem aus Geschwindigkeitsgründen einige Teile von monolithischen Kerneln in den Kernel integriert sind. Dadurch ist er kein reiner Mikrokernel mehr, besitzt aber auch noch nicht genügend Funktionen, um als monolithischer Kernel zu gelten.
Es ist nicht allgemeingültig definiert, welche Bestandteile in den Kernel kompiliert werden und welche als Module hinzugeladen werden. Zum Beispiel ist im Windows-NT-Kernel[1] in den Versionen 4.0 bis 5.2 das Grafiksystem enthalten. Bei der letzten BeOS-Betaversion wurden die Netzwerktreiber in den Kernel kompiliert. Auch Darwin, das eigentlich einen Mach-Mikrokernel enthält, bindet aus Leistungsgründen einen Teil der Gerätetreiber in den Mach-Kernel ein.
Das Hybridkernel-Konzept versucht, die Vorteile des Mikro- und des monolithischen Kernels zu vereinen: Einerseits ist ein Hybridkernel nicht so fehleranfällig wie ein monolithischer Kernel, da zum Beispiel nicht alle Treiber im privilegierten Modus laufen und somit bei einem Absturz nicht das ganze System zum Absturz bringen können. Andererseits sind nicht so viele Kontextwechsel nebst Kommunikation nötig wie bei einem Mikrokernel, was die Geschwindigkeit des Kernels erhöht.
Betriebssysteme, die auf Hybridkernel aufsetzen
[Bearbeiten | Quelltext bearbeiten]- Microsoft Windows NT (Windows NT 3.1 bis einschließlich Windows 11)
- ReactOS
- Plan 9
- Haiku, BeOS
- DragonFly BSD
- Darwin und macOS