NASA chose Linux to run the control computers for the New Horizons probe (Pluto mission) for exactly that reason: Given that their control software would have to communicate with a space probe 9+ years after launch, they needed some assurance that the software would still run on the supercomputers of the distant future. With Linux, they can tinker with any/every aspect of the OS to make sure everything still works. When New Horizons was launched in 2006, we were still on GTK+2.8, QT3.3, Firefox 1.5, everyone was still using Pentium 4s (or equivalent), Windows Vista hadn't been released yet, and the iPhone and Android didn't exist yet.
On the other hand, NASA is to have these problems, because they're still supporting spacecraft at least as old as the Voyager probes (launched in 1977) with computers equivalent to the Atari 2600 and such little memory that they have to be reprogrammed remotely nearly any time they're asked to do something different, AS WELL AS stuff like New Horizons that can basically fly themselves, only phoning home at prearranged checkin times or when it has problems. (There have been large improvements in spacecraft software in the last 30 years, though not as big as the rest of the technology sector)
↧