Je to dávno co jsem koukal na RTlinux a RTAI. Nevýhodou těchto "out of tree" projektů je... že jsou out of tree. Musí se přizpůsobovat vývoji upstreamu, tj. za ním opožděně klopýtat.
Takhle bude možno některým úlohám dát poměrně solidně vyfutrovanou garanci latence v klíčových bodech, kde systém občas "tlačí bota" - samozřejmě především v plánování procesů. A tahle volitelná vlastnost se bude údržbovat jako součást mainstreamu.
Pokud správně chápu, PREEMPT_RT víceméně ovlivní chování aktuálního plánovače/plánovačů. Což je rozdíl oproti RTlinux/RTAI, které do systému vkládají svůj vlastní nanokernel / starý dobrý Linux běží jako jedna z úloh nanokernelu.
On ale celý ten patch PREEMPT_RT dělá drobné změny v mnoha oblastech, a v průběhu let spousta jeho nápadů a "nutných podmínek" do mainstreamu dávno probublala.
VxWorks neznám. QNX jsem párkrát periferně zaznamenal... podpora pro nový hardware je docela dobrá, pokud jdete s vývojem a přijímáte nové verze QNX. Přesto si myslím, že Linux má ovladače pro širší a snad i čerstvější spektrum hardwaru. A má mnohem rozsáhlejší "ekosystém" = dostupný hotový software, a bohatší množinu fičur.
Jsem docela zvědav na nějaké benchmarky / měření, jak moc hard realtime bude tahle nová realtime podpora :-)
Další čtení:
https://bootlin.com/doc/training/preempt-rt/preempt-rt-slides.pdf
Problém linuxu pro tento trh jsou bezpečnostní certifikace. Třeba zrovna to QNX je plně certifikované.
https://blackberry.qnx.com/en/developers/certifications
U linuxu to prakticky nejde udělat, právě proto, že je tak velký a složitý.
Ano, spousta vylepšení ohledně latence se do mainline už dostala, ale PREEMPT_RT přepne třeba mechanizmus zámků na preemptivní (tj dají se přerušit). Což stojí výkon, ale získáte determinizmus.
Pracoval na tom hodně Daniel Oliveira, který bohužel nedávno zemřel: https://lwn.net/Articles/979912/