The latest, but probably not the last, tale of old software running in mission-critical operations comes to us via the Twitter feed of guitar-playing Canadian astronaut Chris Hadfield. The European Space Agency’s Mars Express probe, currently in orbit around the Red Planet and doing just fine, recently had a major software update to increase its chances of discovering water there.
How do you update Windows 98 on a spaceship orbiting Mars? @esa is doing it for Mars Express, after 19 years. https://t.co/DRWtuaqo22 pic.twitter.com/xxkDz5GrL1June 22, 2022
Launched in 2003, the Mars Express, and its MARSIS (Mars Advanced Radar for Subsurface and Ionosphere Sounding) water probe, naturally had software developed using one of the major operating systems of the time — Windows 98.
And that is how we discovered that there's a computer that's probably capable of running Doom in orbit over Mars, notable not so much for its abundance of alien life as it is for being the setting for id Software’s demon-blasting first-person shooter. Thanks, Colonel Hadfield!
ESA’s blog on the subject doesn’t go into a great deal of detail, particularly regarding the framerates we could expect from Doom on the Mars Express, or how large of a screen it has. “Not least because the MARSIS software was originally designed over 20 years ago, using a development environment based on Microsoft Windows 98!" the blog reads.
We do know, however, that one of the favorite processors used by NASA is based on the Apple Mac G3 - it’s a single-core PowerPC 750 233MHz chip from the Bondi Blue iMac, and there are at least two trundling around on Mars in the form of the Curiosity and Perseverance rovers. Technically it’s called a RAD750 because it’s radiation-hardened, and it’s also found in the Kepler and Fermi space telescopes. G3s weren’t noted for their ability to run Windows 98, however, so for the X86 kit we have to look to the Hubble Space Telescope, which received a 25MHz 80486 CPU during a 1999 servicing mission, replacing an 80386.
Therefore we could be looking at there being at least a Pentium 90 on the Mars Express, which opens up the possibility of playing Wing Commander Prophecy or maybe even Ultima 7 on the scientific orbiter, alongside Doom and its first sequel.
Back to the software update, and it seems the new code for the probe “includes a series of upgrades that improve signal reception and on-board data processing to increase the amount and quality of science data sent to Earth”.
“There are many regions near the south pole on Mars in which we may have already seen signals indicating liquid water in lower-resolution data,” said ESA Mars Express scientist Colin Wilson. “The new software will help us more quickly and extensively study these regions in high resolution and confirm whether they are home to new sources of water on Mars. It really is like having a brand new instrument on board Mars Express almost 20 years after launch.”
So it sounds like the Europeans will be the first to know if water, or a rampaging demon army, is discovered on that gleaming red dot in the night sky.
Update 6/23/2024: Clarified OS particulars.
I'm even be surprised that win98 was used in that context over windows nt.
I would expect that the probe is running of a some real time operating system.
And usually embedded system used in space or in some critical application use a bank of CPUs that all execute the same code and then check for discrepancy in the result. In order to avoid errors caused by cosmic ray.
I suspect that they just have to use an old system or VM to run the old tools that they can use to create the updates.
At my old job we had Windows CE development still ongoing for handheld computers that were designed in the early 2000s. Sometimes you just have to keep old stuff around.
Mars Express uses multiple Dynex MA31750 CPUs clustered in pairs onto a CDMUs (Command & Data Management Units), of where there are also a pair (for 4 total CPUs), all running the 1750A instruction set. Mars Express uses an RTOS rather than a regular desktop OS, very likely VxWorks (the project predates ESA's switching of most of their development to RTEMS).