Upgrading Software From 350 Million Miles Away
CWmike writes "Picture doing a remote software upgrade. Now picture doing it when the machine you're upgrading is a robotic rover sitting 350 million miles away, on the surface of Mars. That's what a team of programmers and engineers at NASA are dealing with as they get ready to download a new version of the flight software on the Mars rover Curiosity, which landed safely on the Red Planet earlier this week. 'We need to take a whole series of steps to make that software active. You have to imagine that if something goes wrong with this, it could be the last time you hear from the rover,' said Steve Scandore, a senior flight software engineer at NASA's Jet Propulsion Laboratory. 'It has to work,' he told Computerworld. 'You don't' want to be known as the guy doing the last activity on the rover before you lose contact.'"
It's not about updating the virus scanner or patching leaks. The rover had software loaded for landing, now it's getting software for exploring Mars. It would be a waste of resource to have both loaded at once since they are never required simultaniously. A 4Gb SD card at Best Buy may be cheap, but memory that can tolerate the temperatures, radiation and other hazards of space exploration for 3 years is a little pricier. While the risk of losing communication with the rover is there, I'm pretty sure there is a fallback for when the update fails.
Yes, I'm sure the weight saving from only loading half the software at once was an important factor in this decision. Those bits don't have zero mass you know.
To have a right to do a thing is not at all the same as to be right in doing it