My wonder then is how to effectively manage when things go wrong. The Apollo spacecraft were able to be essentially hot patched directly in the cockpit via the dsky. Can you do that with a fancy touch screen interface now? Perhaps up/down links to the capsule from earth are good/reliable enough to send patches from ground control, if need be? I wonder how the astronauts feel about a potential “loss” of control in case something goes wrong?
What computer and software is used by the Falcon 9? (2015)
81–90 of 160 posts
Re: What computer and software is used by the Falcon 9? (2015)
#82Re: What computer and software is used by the Falcon 9? (2015)
#83Earlier quoted context omitted.
On the ground side, yes, there are many databases for different purposes. But not on the actual flight software.
Very curious, how is state persisted where non-volatile storage is needed, and how is that persistence structured?
You can think as each string being “functional“: given the same set of inputs you expect the same set of outputs.
Re: What computer and software is used by the Falcon 9? (2015)
#84I’ve read a bit about how strict the space shuttle coders were. I wonder what they think about the code running this spacecraft. https://www.fastcompany.com/28121/they-write-right-stuff https://history.nasa.gov/computers/Ch4-5.html https://www.nasa.gov/mission_pages/shuttle/flyout/flyfeature...
Re: What computer and software is used by the Falcon 9? (2015)
#85Interesting that it’s three identical processors running he same software. I remember just the automated Vienna central train station used a pair of machines, x86 and SPARC, one running the logic in a procedural language (Chill) and the other running in a logic language (Prolog). They didn’t want both processors to share any code, and therefore potentially the same bug.
That hasn't been the case in Vienna for some years, so you must have seen that setup a decade or so, ago. These days its THALES-built systems running SIL-4 rated code in a best 2-of-3 or 3-of-5 voting system, and each of the nodes can be either PPC, Arm or x86 - but not all the same, for architecture reasons. These systems produce a vote that has to match, or else the system shuts itself down. Chill and Prolog haven'…
Still, the basic point is interesting: the Thales system also uses a separation of architecture.
Re: What computer and software is used by the Falcon 9? (2015)
#86Interesting that it’s three identical processors running he same software. I remember just the automated Vienna central train station used a pair of machines, x86 and SPARC, one running the logic in a procedural language (Chill) and the other running in a logic language (Prolog). They didn’t want both processors to share any code, and therefore potentially the same bug.
> They didn’t want both processors to share any code, and therefore potentially the same bug. They're not worried about bugs, they're worried about electromagnetic radiation (which is way more present when you get outside the atmosphere) flipping bits.
I'm aware of that; I commented because I'm surprised by it.
I'm sure the issue was discussed so I'm not implying that they are idiots. But it does seem odd to me.
Re: What computer and software is used by the Falcon 9? (2015)
#87Earlier quoted context omitted.
In this case, C++ code is written in a different style than regular applications: exceptions are not allowed, allocations are not allowed past a certain point in program initialization, raw pointers are frowned upon, etc. This is common in this type of software and when you pair it with the right development culture it really makes a difference in the robustness of the result.
Any idea if there's a database layer (eg SQLite, PG, etc) on the systems?
- don't do dynamic any memory allocation, has bounded memory usage, never runs out of memory.
- has bounded execution times
- has low interrupt latency
- can do checksum on data and internal state an option. (if need to load into memory)
- is tested using the most rigorous standards, 100% verification and code coverage.
If you write great relatively general but customizable database system like this with good indexing, you need only 5-10 customers and you are set. Safety-critical systems are growing in size and there is real need for software that can get easily certified.
SQLite could probably get certified as a part a system at least as read only database. It's relatively solid code. But it will cost big money and I don't think anyone has done it.
Re: What computer and software is used by the Falcon 9? (2015)
#88Interesting that it’s three identical processors running he same software. I remember just the automated Vienna central train station used a pair of machines, x86 and SPARC, one running the logic in a procedural language (Chill) and the other running in a logic language (Prolog). They didn’t want both processors to share any code, and therefore potentially the same bug.