WikiDer > Kernel

Kernel

EIN Kernel oder Ader ist in der Informatik der zentrale Teil von a Betriebssystem. Der Kernel ist, vereinfacht gesagt, der Supervisor in einem Betriebssystem.

Aufgaben

Der Kernel hat ein paar minimale Aufgaben zu erledigen:

  • Verwaltung und Handhabung unterbrechen: Dies sind Signale, die sowohl von der Hardware als auch von der Software zur Benachrichtigung oder Anforderung kommen können.
  • Verwaltung des vom Kernel verwendeten physischen Speichers Arbeitsspeicher Prozesse verleihen kann.
  • Verwalten des virtuellen Speichers, wenn a Speicherverwaltungseinheit ist auf dem Prozessor vorhanden. Dadurch kann der Kernel individuelle virtuelle Räume für die Prozesse erstellen, damit sie sich nicht gegenseitig schaden.
  • Verwalten von Prozessen, auch Terminplanung genannt. Dadurch wird festgelegt, welche Aufgabe zu welcher Zeit ausgeführt werden darf.

Die Dienste des Kernels können von Prozessen über a Schnittstelle. Diese funktionieren fast immer über Systemaufrufe (Englisch: Systemaufrufe). Ein Kernel kann zusätzlich zu den oben genannten Aufgaben optionale Aufgaben ausführen:

  • Verwaltung IO. Der Kernel bestimmt, welche Prozesse I/O verwenden können.
  • Verwaltung Firmware-Zugriff (BIOS oder UEFA). Der Kernel bestimmt, welche Prozesse die Firmware verwenden können und der Kernel wird diese Anfragen bearbeiten.
  • Der Kernel kann auch Hardware selbst steuern und über eine Schnittstelle zugänglich machen.

Kernel-Typen

Im Allgemeinen gibt es drei Arten von Kerneln. Die beiden Extreme: monolithische Kerne und Mikrokerne und die dazwischen Hybrid-Kernel. Es gibt auch Untertypen wie die Exokern, das Nanokernel und der modularer Kernel.

Monolithischer Kern

Siehe den Artikel Monolithischer Kern für den Hauptartikel zu diesem Thema.

Ein monolithischer Kernel ist ein Kernel, bei dem die Mehrheit aller Dienste im Supervisor-Modus abgewickelt wird. Somit sind Treiber integraler Bestandteil des Kernels, jedoch nicht Bestandteil des Kernels.

Mikrokernel

Siehe den Artikel Mikrokernel für den Hauptartikel zu diesem Thema.

Ein Mikrokernel ist ein Kernel, bei dem die meisten Dienste im Benutzermodus verarbeitet werden. Treiber arbeiten beispielsweise als separate Prozesse im System.

Hybrid-Kernel

Siehe den Artikel Hybrid-Kernel für den Hauptartikel zu diesem Thema.

Ein Hybridkernel ist eine Kreuzung zwischen einem monolithischen Kernel und einem Mikrokernel. Zum Beispiel werden einige Dienste im Benutzermodus und einige im Supervisormodus abgewickelt.

Exokernel

Siehe den Artikel Exokernel für den Hauptartikel zu diesem Thema.

Ein Exokernel ist ein Kernel, der versucht, Abstraktion von Sicherheit zu trennen. Dadurch wird sichergestellt, dass möglichst wenig Abstraktion stattfindet, sodass Anwendungen die Abstraktion selbst über Schnittstellen bewältigen können.

Picokernel/Nanokernel

Siehe den Artikel Nanokernel für den Hauptartikel zu diesem Thema.

Ein Picokernel oder Nanokernel ist ein Exokernel, der extrem klein ist, oft sogar kleiner als ein Mikrokernel.

modularer Kernel

Siehe den Artikel modularer Kernel für den Hauptartikel zu diesem Thema.

Ein modularer Kernel ist ein hybrider Kernel, bei dem der Kernel in kleinere Teile unterteilt ist, die Module genannt werden.

Siehe die Kategorie Betriebssystem-Kernel von Wikimedia Commons für Mediendateien zu diesem Thema.