Generally speaking, your limiting factor wrt. hard RT performance is going to be the underlying hardware, not the OS per se. This of course assumes that you avoid known sources of OS-related latency.
Go look at the Beaglebone Black/Green/Blue/AI.
The microprocessors in those run Linux but have at least two PRUs (programmable real-time unit). Those PRU units are bare-metal, hard real-time but can communicate out to the Linux system which can do the "soft" real time stuff.
It's also common to run your code as init and avoid calling into the kernel.
A more modern treatment is to write whatever and then qualify the system thoroughly, and all things considered this will probably overtake everything else as the main development methodology.
For something like a thrust vectoring rocket, I'd stick to a sub processor running an actual RTOS or bare metal code.