- cross-posted to:
- linux@lemmy.ml
- linux@programming.dev
- cross-posted to:
- linux@lemmy.ml
- linux@programming.dev
Currently most avionics real-time operating systems for airplanes are proprietary and very specialized for safety assurance reasons
Linux can and is used on airplanes, flight control systems is not where it lives. There is a layer of abstraction, the auto pilot, which allows for Linux to be used and the safety of flight risks to be mitigated.
Linux is a general-purpose OS, and that is generally a bad choice for safety-critical real-time applications. And it is not something that Linux can just be adapted for – the biggest problems are: the kernel is big and the code is complex. Anything added do Linux to ‘solve that’ would just make it even bigger and even more complex. And removing stuff for kernel would just make it worse general-purpose OS.
The solution for proprietary RTOSes used there would be to create a new, open-source one. This should be doable as those are small and simple by definition (to some extent – only as simple as they can be for given task). I guess this will happen one day, though it is harder for it to happen naturally, as that is not something hobbyists would do for their own needs in their own time and that is usually what starts an open source projects.
On the other hand – Linux can co-exist and I am sure it does co-exist with those specialized RTOSes. I would assume that even on a Boeing airplane there are many Linux instances running… or even Windows ones.
Wouldn’t it be possible to make a Linux kernel for real time applications? That would obviously be very stripped down, but you’re not going to run Crysis on your avionics computer anyway.
The problem with modern distributions is that nobody ever has to deal with their own kernel anymore and nobody learns how to trim one down and build it.
A FreeRTOS derivative has gone through the effort of getting certified for safety critical applications, but that derivative is sadly proprietary. Even if FreeRTOS itself can’t meet that bar, though, the work wouldn’t have to start from scratch.
I’m one of those rare end-users of Linux (by choice) so I’m not the best when it comes to understanding how to pop a kernel or summon daemons or whatever. But my impression of Linux is that it is adaptable. Rather than relying on proprietary systems locked into vendors, it seems to make sense to shift into a non-proprietary model going forward. But again, I’m not popping any kernels for daemons.
pop a kernel of summon daemons
I’m going to refer to starting daemons as “summoning” from now on!
Given the open-source nature of the Linux kernel, it seems that a company could customize it to their needs in order to mitigate the majority of these concerns. Most of this sounds like a corporate shill making excuses rather than giving specific examples of deficiencies in the Linux kernel.