Vergangene Woche wurde auf der Linux-Kernel-Mailingliste (LKML) von Cong Wang, ein Kernel-Entwickler und Maintainer des Network-Traffic-Subsystems, ein initiales Patchset als RFC (Request for Comment) eingereicht, das die Unterstützung für Multikernel-Architekturen im Kernel vorschlägt. Damit könnten mehrere unabhängige Kernel-Instanzen auf einem einzigen physikalischen Rechner koexistieren und kommunizieren. Jede Kernel-Instanz kann auf dedizierten CPU-Kernen laufen und dabei die zugrunde liegenden Hardware-Ressourcen gemeinsam nutzen.
Wang lädt die Community ein, die Multikernel-Architektur zu diskutieren und weiterzuentwickeln, bevor sie eventuell einmal in den Mainline-Kernel einfließt. Wie Wang auf der Webseite seiner Firma Multikernel Technologies Inc. schreibt, will er das Rad nicht neu erfinden, sondern basiert seine Patches auf Kexec, einem Tool im Linux-System, das das schnelle Laden und Starten eines anderen Kernels aus dem aktuell laufenden Kernel ermöglicht.
Was bringt die Multikernel-Architektur?
Der Ansatz ist nicht einfach ein weiteres Virtualisierungskonzept wie Virtuelle Maschinen oder Container, sondern eine fundamentale Art, Hardwarekontrolle auf mehrere Kernel zu verteilen, wobei jeder Kernel eigene CPU-Kerne und Speicherbereiche verwaltet. Vorteil: Ein kompromittierter Kernel kann andere nicht beeinflussen, was das Sicherheitsniveau gegenüber klassischen VM- oder Container-Lösungen erhöht. Ziel ist es, Isolation, Sicherheit und Flexibilität unter anderem für moderne Cloud- und Data-Center-Workloads zu erhöhen. Ein weiterer Vorteil wäre der Parallelbetrieb von Echtzeit- und Universal-Kerneln auf derselben Hardware. Für Cloud-Umgebungen mit sehr vielen CPU-Kernen lassen sich zudem Workloads besser verteilen und optimieren.
Weitere genutzte Features
Neben Kexec soll ein eigens entwickeltes Framework für die Inter-Prozessor-Interrupts (IPI) zum Einsatz kommen, der es den einzelnen Kerneln erlaubt, miteinander zu kommunizieren. Mit KHO (Kexec HandOver) wurde zudem mit Linux 6.16 ein weiteres Feature in den Kernel aufgenommen, das Speicher- und Statusmanagement beim Kexec-Prozess verbessert, da es bestimmte Speicherbereiche und Systemzustände beim Kernelwechsel besser erhalten kann.

Für und Wider
Die bisher eher zurückhaltende Diskussion um das Patchset auf der Liste vereint Zustimmung und Ablehnung gleichermaßen. Neben der Neugier auf die technischen Möglichkeiten besteht Skepsis gegenüber Aufwand und Komplexität vor allem bei der gemeinsamen Nutzung von Hardware. Selbst wenn dieser Vorschlagüber die Phase des RFC hinauskommt, wird eine Aufnahme im Mainline-Kernel vermutlich mehrere Jahre dauern.
