Das Unternehmen ByteDance hat seine Lösung für die Ausführung mehrerer Linux-Kerne vorgestellt.

Das chinesische Unternehmen ByteDance, das den Dienst TikTok entwickelt, hat in der Entwickler-Mailingliste des Linux-Kernels Patches veröffentlicht, die das Parker-System (PARtitioned KERnel) implementieren. Dieses System ermöglicht es, mehrere Linux-Kernel gleichzeitig auf einem Computer auszuführen, ohne traditionelle Virtualisierung zu verwenden. Bei den zu lösenden Aufgaben ähnelt Parker dem vor wenigen Tagen vorgestellten Multikernel-Projekt, weicht jedoch in Architektur und Implementierung ab.

In Parker kommt eine Partitionierung vorhandener CPU-Kerne, Speicher und Geräte zum Einsatz. Jedes ausgeführte Kernel-Exemplar basiert auf einem gemeinsamen Kern-Image, kann jedoch unterschiedliche Einstellungen und Optimierungen nutzen. Der erste gestartete Kernel (Boot Kernel) verteilt und partitioniert die Hardwaregeräte. Die anderen Linux-Kernel-Exemplare (Application Kernel) arbeiten nur mit den ihnen zugewiesenen CPU-Kernen, Speicher und Ein-/Ausgabegeräten.

In der ursprünglichen Version fehlt der Steuerungsmechanismus zur Senkung der Betriebskosten und zur Vereinfachung der Implementierung, sodass alle Kerne einen gemeinsamen Isolationsbereich (Domain) verwenden, d. h. ein Fehler in einer Kerneinstanz kann Probleme im gesamten System verursachen. In Zukunft sind separate Hardwarefähigkeiten für die Isolation von Kernen vorgesehen. Parker erwähnt Anwendungen für Computer mit einer großen Anzahl von CPU-Kernen, da bei der Skalierung von Aufgaben Probleme auftreten können.

Für das Management in Parker wurde eine Schnittstelle auf Basis von kernfs implementiert, und zur Lade zusätzlicher Kerne in reservierte Speicherbereiche wird kexec verwendet. Vor dem Start zusätzlicher Kerne gibt der primäre Kern die CPU-Kerne frei, reserviert physischen Speicher und trennt PCI-Geräte zur Nutzung im segmentierten Kern. Für die Ein- und Ausgabe muss jedem Kern ein eigenes PCIe-Gerät zugewiesen werden, wie beispielsweise ein NVMe-Speicher oder ein Netzwerkadapter. Nach dem Start der Kerneinstanz kann diese nicht mit anderen Kernen interagieren.

Quelle: opennet.ru

Купить надежный хостинг для сайтов с защитой от DDoS, VPS VDS серверы 🔥 Купить надежный хостинг для сайтов с защитой от DDoS, VPS VDS серверы | ProHoster