Kern

Definition - Was bedeutet Kernel?

Ein Kernel ist die Kernkomponente eines Betriebssystems. Durch Interprozesskommunikation und Systemaufrufe fungiert es als Brücke zwischen Anwendungen und der auf Hardwareebene durchgeführten Datenverarbeitung.

Wenn ein Betriebssystem in den Speicher geladen wird, wird der Kernel zuerst geladen und bleibt im Speicher, bis das Betriebssystem wieder heruntergefahren wird. Der Kernel ist für Aufgaben auf niedriger Ebene wie Festplattenverwaltung, Aufgabenverwaltung und Speicherverwaltung verantwortlich.

Technische.me erklärt Kernel

Ein Computerkernel bildet eine Schnittstelle zwischen den drei Hauptkomponenten der Computerhardware und stellt Dienste zwischen der Anwendungs- / Benutzerschnittstelle und der CPU, dem Speicher und anderen Hardware-E / A-Geräten bereit.

Der Kernel stellt Computerressourcen bereit und verwaltet sie, sodass andere Programme diese Ressourcen ausführen und verwenden können. Der Kernel richtet auch den Speicheradressraum für Anwendungen ein, lädt Dateien mit Anwendungscode in den Speicher, richtet den Ausführungsstapel für Programme ein und verzweigt zur Ausführung an bestimmte Stellen innerhalb von Programmen.

Der Kernel ist verantwortlich für:

  • Prozessmanagement für die Anwendungsausführung
  • Speicherverwaltung, Zuordnung und E / A.
  • Geräteverwaltung durch Verwendung von Gerätetreibern
  • Systemaufrufsteuerung, die für die Ausführung von Kernel-Diensten unerlässlich ist

Es gibt fünf Arten von Kerneln:

  1. Monolithische Kernel: Alle Betriebssystemdienste werden entlang des Hauptkernel-Threads in einem monolithischen Kernel ausgeführt, der sich ebenfalls im selben Speicherbereich befindet, wodurch ein leistungsstarker und umfassender Hardwarezugriff bereitgestellt wird.
  2. Mikrokerne: Definieren Sie eine einfache Abstraktion über Hardware, die Grundelemente oder Systemaufrufe verwendet, um minimale Betriebssystemdienste wie Multitasking, Speicherverwaltung und Interprozesskommunikation zu implementieren.
  3. Hybridkernel: Führen Sie einige Dienste im Kernelbereich aus, um den Leistungsaufwand herkömmlicher Mikrokernel zu verringern, bei denen der Kernelcode weiterhin als Server im Benutzerbereich ausgeführt wird.
  4. Nano-Kernel: Vereinfachen Sie den Speicherbedarf, indem Sie Dienste delegieren, einschließlich der grundlegenden Dienste wie Interrupt-Controller oder Timer an Gerätetreiber.
  5. Exo-Kernel: Weisen Sie anderen Programmen physische Hardwareressourcen wie Prozessorzeit und Festplattenblock zu, die mit Bibliotheksbetriebssystemen verknüpft werden können, die den Kernel zur Simulation von Betriebssystemabstraktionen verwenden.