Kernel
Aus der Mikrocontroller.net Artikelsammlung, mit Beiträgen verschiedener Autoren (siehe Versionsgeschichte)
Der Kernel ist der Kern eines Betriebssystems. Er wird beim Starten ins RAM geladen und steuert dann alle grundlegenden Funktionen. Normalerweise stellt er auch die Verbindung zur Hardware dar, da Programme bei modernen PC-Betriebssystemen nicht direkt auf die Hardware zugreifen können, sondern dazu Gebrauch der Kernel-Funktionen machen müssen.
Es gibt drei grundsätzliche Arten eines Kernels:
- Bei einem monolithischen Kernel sind große Teile des Betriebssystems direkt im Kernel integriert. Beispielsweise laufen Gerätetreiber dabei als Teil des Kernels mit den entsprechenden direkten Zugriffsrechten auf die Hardware.
- Mikro-Kernel (z. B. Hurd)
- Bei einem Mikro-Kernel wird versucht, möglichst wenig Funktionalität in den Kernel zu integrieren und diese in eigene Programme auszulagern, die im Kontext des Benutzers laufen und keinen direkten Zugriff auf die Hardware haben. Durch diese Einschränkung können schlecht programmierte Treiber das System weniger instabil machen.
- Hybrid-Kernel (z. B. Windows)
- Ein Hybrid-Kernel ist eine Mischung aus beiden Ansätzen und integriert Teile direkt in den Kernel, andere Teile laufen als eigene Prozesse im Benutzer-Adress-Bereich.