@ericmarceau QNX was one of the Real-Time systems I used on my own. VxWorks and some commercial versions of Mercury Computer systems were the ones I participated in testing. Real-time systems was one of numerous things I studied during my undergraduate education.
From the https://realtime-linux.org/ site I quote a passage about what Real-time actually means:
" How Real-Time Linux Works
Real-Time Linux is enabled via a configuration setting in the upstream Linux kernel. This configuration enables a fully preemptible scheduler, meaning a high-priority task can interrupt a lower-priority one, and by minimizing areas where interrupts are disabled. This ensures that critical tasks execute more consistently and predictably.
The primary goal of RT Linux is to minimize latency and jitter, providing more predictable task execution times crucial for time-sensitive applications. Jitter is the variation in task execution times.
The goals of the Real-Time Linux Project are to support users of RT Linux through documentation and system optimization guides, deliver robust performance through test automation, ensure RT Linux is well supported in upstream, and facilitate development roadmaps, in coordination with the broader community."
One other comment, and this is not Real-time, but does have to do with performance: I often use the Liquorix kernel, which, like the information above, has kernel settings that favor particular interactive things, such as mouse clicks and keystrokes at a slight degradation in very large file transfers and depending on the workload, can also increase the CPU temperature, and that’s the Liquorix kernel. The Xanmod kernel does similar things; both of them are appropriate for gaming software. I don’t use gaming software, but I do a lot of interactive typing and navigation, so it’s a good kernel for me. Otherwise it’s similar to a general purpose kernel.
Conversely, I’ve noticed that Red Hat kernels, while okay for interactive use, are most definitely optimized differently than Liquorix kernels; they are best for those big server loads and large data transfers. I’ve often felt over the years that they are slightly sluggish in general interactive use, so they have never been a favorite of mine for personal systems. In corporate environments where I’ve used them on powerful systems, then the interactive sluggishness is not noticed nearly as much due to the sheer power and performance of enterprise servers.