Live data from Hacker News

What computer and software is used by the Falcon 9? (2015)

space.stackexchange.com

51–60 of 160 posts

Re: What computer and software is used by the Falcon 9? (2015)

#51
post #36

Sounds kinda disappointing/irresponsible. Chromium is an overly complex, relatively buggy piece of software. For example I recently experienced a bug where a text I selected was significantly offset from what should have been selected given the pointer position (on linux), a misclicky kind of bug. Considering that the majority of Crew Dragon's controls are through touch screen, maybe even manual docking(not sure, but…

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?

Re: What computer and software is used by the Falcon 9? (2015)

#52

Using a gigantic overly complex software written in a non-memory-safe language for a system that gives commands to the flight control system? This is how you get the Cylons pwning your spaceships. >sigh<

We get it, you like Go. Meanwhile they are in space tho..

Re: What computer and software is used by the Falcon 9? (2015)

#53
post #36

Earlier 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?

On the ground side, yes, there are many databases for different purposes. But not on the actual flight software.

Re: What computer and software is used by the Falcon 9? (2015)

#54

Using a gigantic overly complex software written in a non-memory-safe language for a system that gives commands to the flight control system? This is how you get the Cylons pwning your spaceships. >sigh<

Adama wouldn't have worried so much about networked ships if the people who programmed this ship programmed Battlestars. They still used COBOL.

Re: What computer and software is used by the Falcon 9? (2015)

#55

Using a gigantic overly complex software written in a non-memory-safe language for a system that gives commands to the flight control system? This is how you get the Cylons pwning your spaceships. >sigh<

Isn't mission critical software overwhelmingly C++?

Re: What computer and software is used by the Falcon 9? (2015)

#56
post #20

Sounds kinda disappointing/irresponsible. Chromium is an overly complex, relatively buggy piece of software. For example I recently experienced a bug where a text I selected was significantly offset from what should have been selected given the pointer position (on linux), a misclicky kind of bug. Considering that the majority of Crew Dragon's controls are through touch screen, maybe even manual docking(not sure, but…

Once you decide that absolute reliability is unattainable, you can instead aim for sufficient redundancy. It’s not perfect, but with enough safe guards in place it may very well be good enough.

Software is not always like hardware though: the same software failure can cascade across redundant instances rapidly just as easily as it affects the primary.

Re: What computer and software is used by the Falcon 9? (2015)

#57
post #45

Sounds kinda disappointing/irresponsible. Chromium is an overly complex, relatively buggy piece of software. For example I recently experienced a bug where a text I selected was significantly offset from what should have been selected given the pointer position (on linux), a misclicky kind of bug. Considering that the majority of Crew Dragon's controls are through touch screen, maybe even manual docking(not sure, but…

The fact that it's implemented in JavaScript and Chromium just tells you the fancy display is entirely superfluous to mission success.

Interesting way to see it. For anyone wondering how unreliable it is, think instead that the trade off was well planned.

Re: What computer and software is used by the Falcon 9? (2015)

#58
post #33
post #11

Earlier quoted context omitted.

I believe the choice of Chromium and JS for the UI simply shows that the astronauts are merely inconvenient payloads. Gagarin's first flight was already fully automated 59 years ago.

The UI design consisting exclusively of elegant but low contrast shades of blue certainly gives a similar vibe. But that might still be misleading, perhaps they deliberately keep the routine visualizations in a low key "style over substance" passenger entertainment mode so that they have plenty of visual headroom for when something actually important combs up?

That's an interesting thought. If the UI is always blue-ish...and suddenly a bright red triangle appears with an Exclamation Point inside....you might be about to die and should act accordingly.

Re: What computer and software is used by the Falcon 9? (2015)

#59

Sounds kinda disappointing/irresponsible. Chromium is an overly complex, relatively buggy piece of software. For example I recently experienced a bug where a text I selected was significantly offset from what should have been selected given the pointer position (on linux), a misclicky kind of bug. Considering that the majority of Crew Dragon's controls are through touch screen, maybe even manual docking(not sure, but…

Most safety critical code in the world, both civilian and military, is currently written in C/C++. Ada/SPARK is also used but it 's below 50%.

These languages have the best practical static code analyzer, verification and proofing tools money can by. I'm personally using Astree https://www.absint.com/astree/index.htm Auto­matic docking software for the ATV that delivers supply to ISS is written using C code and verified with Astree.

People get stuck into the language, but if it has some features that make it work, you can use it with verifiers. Then you write tests and simulators and tests ...

JavaScript and Chromium seems more suspect to me, but if the code is well tested and has limited run time, I think it can be good to go. The state is stored and prosessed in those radiation hardened RAD750 processors. Chromium/JavaScript runtime image can restart every few seconds if needed.

The UI and controls seem like unnecessarily flashy bullshit to me. Usually if you diverge from KISS principle bad things happen. But before I make any judgements I would see how they made those decisions.

Re: What computer and software is used by the Falcon 9? (2015)

#60
post #10

Heaven help them if the Javascript they run depends on npm components. When I read about these multiply redundant systems I always want to know what provisions are made for restarting or shutting down a part that is producing wrong answers. Can the Power device reset the machine whose instructions lost the vote? If the two cores disagree, do they both reset? Also, what is done for procedures that must not be interrup…

Javascript is what will be used to program the James Web Telescope is/when it ever goes into orbit.
Post reply on HN