Die Kernel-Entwickler von Linux haben die Übergabe endgültiger Änderungen angekündigt, die für den Build des Kernels mit der PREEMPT_RT-Option erforderlich sind. Diese Änderungen werden in den linux-next-Zweig eingefügt, der für die Erstellung der Version 6.12 verwendet wird. Nach der Annahme dieser Änderungen in den Hauptzweig des Kernels wird der PREEMPT_RT-Modus für die Architekturen X86, ARM64 und RISC-V verfügbar sein. Später wird die Unterstützung für ARM- und POWERPC-Architekturen hinzugefügt, für die bisher noch nicht alle Patches in den Kernel eingefügt wurden.
Die Entwicklung der Umsetzung des Echtzeitmodus für den Linux-Kernel läuft seit 2005 im Rahmen des Projekts „Realtime-Preempt“ („-rt“) und wird seit 2015 von der Linux Foundation betreut. Bisher wurde die Umsetzung des PREEMPT_RT-Modus als externe Patches bereitgestellt, auf deren Basis einige Distributionen wie RHEL, SUSE und Ubuntu separate Echtzeit-Editionen ihrer Produkte erstellt haben, die in Bereichen wie Finanzsystemen, Audio- und Videobearbeitung, Luftfahrt, Medizin, Robotik sowie Telekommunikations- und Industriesystemen gefragt sind, in denen eine vorhersehbare Bearbeitungszeit von Ereignissen gewährleistet sein muss.
Im Jahr 2019 begann die Förderung der in PREEMPT_RT entwickelten Patches in den Hauptkernel. In die Konfigurationsdatei des Kernels 5.3 wurde die OPTION PREEMPT_RT zur Aktivierung des Echtzeitmodus hinzugefügt, aber die Integration der erforderlichen Änderungen erstreckte sich über 5 Jahre. Jetzt neigt sich dieser Weg dem Ende zu, und wahrscheinlich wird der Kernel bereits in Version 6.12 im PREEMPT_RT-Modus ohne zusätzliche Patches erstellt werden können.
Die letzte im Kernel fehlende Funktion, die die Aktivierung des PREEMPT_RT-Modus verhinderte, war die Unterstützung für nicht blockierendes atomares Logging über die Funktion printk. Diese Möglichkeit wurde nun in den linux-next-Zweig aufgenommen. Auch die Implementierung eines atomaren und nicht blockierenden Konsolen-Treibers für den UART 8250 wird im linux-next-Zweig erwartet, ohne die der atomare Kontext zum Ausgeben von Notifikationen in der Konsole derzeit deaktiviert bleibt.
Quelle: opennet.ru
