| only_human |
2004-02-23 10:40 |
How the rover Spirit got glitched.
I just read a nice explanation of the events that lead up to the trouble with the Spirit rover on Mars:[URL=http://www.eetimes.com/sys/news/OEG20040220S0046]The trouble with Rover is revealed[/URL] (EE Times)
It turns out that they updated the software in flight. Then they uploaded a utility to delete the leftover files and directories used by the original software.
The utility they transmitted to clean up the files and directories was in two parts; the second part was not transmitted correctly and was retransmitted a few days later. At that time, there were too many files stored in the flash memory. Not enough RAM memory was available to create a directory structure. The computer logged a memory allocation failure and rebooted. Each time it booted, it was unable to allocate enough RAM to create a directory table for the mounted flash file system -- leading to another RAM allocation failure, task termination, and subsequent reboot.
They had to send some low level code to delete about thousand files and their directories directly from the flash ROM without mounting it as a file system. After that they were able to mount it, run a checkdisk utility, clean up some corruption that had occurred and get back to business.
In the post mortem file system analysis, they found a system log that step-by-step logged actions up to and including the first allocation failure.
|