Kernel (Betriebssystem)

Ein Kernel ist der zentrale Teil eines Betriebssystems. Er verwaltet die Operationen des Computers und der Hardware, vor allem Speicher und CPU-Zeit.

Es gibt fünf Arten von Kernen:

  • Ein Mikro-Kernel, der nur grundlegende Funktionalität enthält;
  • Ein monolithischer Kernel, der viele Gerätetreiber enthält.
  • Hybrid-Kernel
  • Exo-Kernel
  • Nano-Kernel

Ein Computerbenutzer interagiert nie direkt mit dem Kernel. Er läuft hinter den Kulissen und kann nicht gesehen werden, mit Ausnahme der Textprotokolle, die er ausgibt.

Zeigt die Aufgabe eines Kernels in einem ComputerZoom
Zeigt die Aufgabe eines Kernels in einem Computer

Operationen des Kernels

Der Kernel ist der grundlegendste Teil eines Betriebssystems. Man kann ihn sich als das Programm vorstellen, das alle anderen Programme auf dem Computer steuert. Wenn der Computer startet, durchläuft er einige Initialisierungsfunktionen (Booten), wie z.B. die Überprüfung des Speichers. Es ist verantwortlich für die Zuweisung und Freigabe von Speicherplatz, der die Ausführung von Software ermöglicht.

Der Kernel stellt Dienste zur Verfügung, damit Programme die Verwendung der Netzwerkkarte, der Festplatte oder anderer Hardware anfordern können. Der Kernel leitet die Anfrage an spezielle Programme, Gerätetreiber genannt, weiter, die die Hardware steuern. Er verwaltet auch das Dateisystem und setzt Interrupts für die CPU, um Multitasking zu ermöglichen. Viele Kernel sind auch dafür verantwortlich, sicherzustellen, dass fehlerhafte Programme den Betrieb anderer Programme nicht beeinträchtigen, indem sie den Zugriff auf Speicher verweigern, der ihnen nicht zugewiesen wurde, und die Menge an CPU-Zeit einschränken, die sie verbrauchen können. Er ist das Herz des Betriebssystems.

Mikrokerne und monolithische Kerne

Betriebssysteme verwenden üblicherweise monolithische Kernel. In Linux beispielsweise sind Gerätetreiber oft Teil eines Kernels (insbesondere ladbare Kernelmodule). Wenn ein Gerät benötigt wird, wird seine Erweiterung geladen und mit dem Kernel "verbunden", wodurch der Kernel größer wird. Monolithische Kernel können Probleme verursachen, wenn einer dieser Treiber fehlerhaft ist, z.B. wenn ein Beta-Treiber heruntergeladen wird. Da er Teil des Kernels ist, kann der fehlerhafte Treiber die Mechanismen, die mit fehlerhaften Programmen umgehen, außer Kraft setzen (siehe oben). Dies kann dazu führen, dass der Kernel und damit der gesamte Computer nicht mehr funktioniert. Wenn zu viele Geräte vorhanden sind, kann dem Kernel auch der Speicher ausgehen, was zu einem Systemabsturz führen oder den Computer sehr langsam machen kann.

Mikrokerne sind eine Möglichkeit, dieses Problem zu lösen. In einem Mikrokernbetriebssystem befasst sich der Kernel nur mit kritischen Aktivitäten, wie der Steuerung des Speichers und der CPU, und sonst nichts. Treiber und andere Funktionen, die monolithische Kernel normalerweise innerhalb des Kernels enthalten würden, werden außerhalb des Kernels verschoben, wo sie unter Kontrolle sind. Anstatt ein unkontrollierbarer Teil des Kernels zu sein, ist der Beta-Treiber daher nicht wahrscheinlicher als ein Beta-Webbrowser, um einen Absturz zu verursachen. Das heißt, wenn ein Treiber schief geht, kann er einfach vom Kernel neu gestartet werden. Leider ist es sehr schwierig, mikrokernbasierte Betriebssysteme zu erstellen, und es gibt keine gängigen Mikrokernbetriebssysteme. Minix und QNX sind beides Mikrokernbetriebssysteme.


AlegsaOnline.com - 2020 / 2023 - License CC3