Was ist ein Kernel in der Datenverarbeitung?
In den meisten Computer-Betriebssystemen ist der Kernel die zentrale Komponente. Es ist die Brücke zwischen dem Benutzer und den Anwendungen und der Computerhardware. Es ist auch der Mechanismus, mit dem der Computer mehrere Benutzer und mehrere Aufgaben gleichzeitig ausführen kann. Die Arten von Kerneln sind der monolithische Kernel, der Mikrokernel, der Hybridkernel, der Nanokernel und der Exokernel.
Der Kernel verwaltet alle Systemressourcen des Computers. Dies umfasst die Langzeitspeicherung, die Zentraleinheit (CPU), das Kurzzeitgedächtnis sowie die Ein- und Ausgabegeräte. Wenn eine Anwendung eine dieser Ressourcen benötigt, stellt der Kernel die Ressource zur Verfügung und vervollständigt die Anforderung.
Durch diesen Umgang mit Ressourcen können die Betriebssysteme sowohl für mehrere Benutzer als auch für mehrere Aufgaben verwendet werden. Das Betriebssystem führt nicht mehr als eine Aufgabe gleichzeitig aus. Stattdessen wechselt der Kernel Aufgaben mit einer so hohen Geschwindigkeit, dass der Computer scheinbar mehrere Aufgaben ausführt. Der Kernel ist auch dafür verantwortlich, sicherzustellen, dass die von einem Benutzer oder Prozess verwendeten Ressourcen nicht gegen die Anforderung eines anderen Benutzers oder Prozesses verstoßen.
Es gibt zwei Haupttypen von Kerneln: den monolithischen Kernel und den Mikrokernel. Monolithische Kernel verwenden eine Überwachungsmethode der Ressourcenverwaltung, bei der alle Betriebssystemdienste im selben Adressraum, dem so genannten Kernelraum, ausgeführt werden. Einige monolithische Kernel können ausführbare Module laden und entladen. Dadurch werden die Funktionen des Betriebssystems erweitert, während immer noch eine minimale Menge an Code im Kernel-Space ausgeführt wird.
Auf Mikrokernen wird nur eine minimale Anzahl von Betriebssystemdiensten ausgeführt, z. B. Speicherverwaltung, Thread-Verwaltung und Kommunikation zwischen Prozessen im Kernel. Alle anderen Dienste wie Gerätetreiber, Benutzeroberflächen und Dateiverwaltung werden im Benutzerbereich ausgeführt. Der Mikrokernel minimiert die Menge an Code, die im Kernelmodus ausgeführt wird, erheblich.
Ein Hybridkern ist eine Kombination aus Monolith- und Mikrokernen. Die meisten Systemdienste des Betriebssystems werden wie ein monolithischer Kernel im Kernel-Space ausgeführt. Es gibt andere Dienste wie das Dateisystem und das Fenstersystem, die im Benutzerbereich ausgeführt werden.
Die anderen Kernel-Typen sind der Nanokernel und der Exokernel. Der Nanokernel verwendet Gerätetreiber, um fast alle Dienste zu verwalten. Der Exokernel verwendet Programme, um physische Ressourcen zuzuweisen.