3 ms·
The Software Behind the Mars Phoenix Lander
- jcromartie 18y agoSummary: C code developed with the waterfall methodology, running under VxWorks, all on a 33Mhz PowerPC board. Someone who works in embedded software could clarify this for me, but isn't that a fairly standard setup? Whatever gets the job done, right? For what I've heard about NASA using Lisp and Forth for some of its software, especially when they had to remotely debug and update the spacecraft, this was a little disappointing.
- zandorg 18y agoRon Garret details some of the Lisp NASA development. The basic thing was, it was used as an experiment on a deep space test probe (I think) but they switched to C++ because of orders from on high. http://web.archive.org/web/20070228160104/http://ase.arc.nasa.gov/publications/pdf/2000-0176.pdf http://web.archive.org/web/20070228160104/http://ase.arc.nas...
- d0mine 18y agoMemory: 128M
- shaunxcode 18y agosome of the coolest nasa/lisp stuff I stumbled upon was called "pacman". It was a 3d bin packing algorithm for figuring out optimal placement of cargo etc.
- sspencer 18y agoVxWorks: For when it can't crash...ever. Some of the most entertaining and enlightening projects I have ever worked on were centered around VxWorks. Interesting interview. I liked the bit at the end about not allowing dynamically allocated memory!
- d0mine 18y agoRegarding crashing: Am I right in assuming that there's very little process separation in the older RAD 6000 boards? There is no process separation. I mean basically what we — One bad pointer in one module and — Exactly. — you wait for the next update window. Exactly. Wow. I could write software like that. [Laughs] Well — I won't give you a 90 percent certainty though. We have strict coding guidelines that we use. We don't allow dynamic memory allocation, for example.
- gaius 18y agoYou can still suffer priority inversion under VxWorks (indeed, this has happened to NASA).
- d0mine 18y agoThe transcript is not complete. It leaves out a Java garbage collection discussion and why the presence of water on Mars is of tremendous importance, for example.