Live data from Hacker News

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

space.stackexchange.com

151–160 of 160 posts

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

#151
post #43

Earlier quoted context omitted.

You haven’t made any arguments about why Javascript isn’t good for building UIs there. Here’s mine for why it is: - first class functions (callback style is a good fit for UI programming) - async/await and single threaded - many components of UIs are async by nature, Javascript supports you well here while keeping things simple with its single threaded model

Sharing the UI thread with logic is something to be mitigated when building UIs, it's not a feature.

In theory, maybe. In practice, your UI thread very rarely has to do the kind of heavy lifting that would block it so badly you actually have problems.

I have encountered this -- for example parsing very large incoming JSON payloads -- but very rarely. And if you really need to mitigate it, there are webworkers.

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

#152

Earlier quoted context omitted.

Could you name few better than js?

In the context of writing reliable software for a spacecraft? Pretty much anything with a reasonable type system, for a start. Maybe C#, or some reasonable subset of C++20, or Rust. Maybe Reason or OCaml.

Many people are using TypeScript these days, it works very well.

I like C# and Rust too. I've built UI's in C++ and MFC/OpenGL/DirectX. It remains my fairly strong opinion that JavaScript is well suited to UI development.

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

#153

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…

I don't see why. Chromium is being used in the UI. Not on critical flight software. > maybe even manual docking It isn't done manually > C++ and linux do not strike me as mission critical piece of software / language either A lot of flight software is done on C++, as you even mentioned. In the end, your best reliability partner is not using a language that's only know by fewer people. What would be a good "mission cr…

  QNX (with no memory protection?)
Its probably a misunderstanding, but QNX has a very strong memory protection model that extends to its driver stack. Given that its a true realtime/microkernel, which has its own set of problems, but memory protection isn't one of them. For a number of cases QNX is going to be a large step up from linux.

http://www.qnx.com/developers/docs/6.5.0/topic/com.qnx.doc.i...

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

#155
post #126

Earlier quoted context omitted.

What happens if some anomaly happens where the shuttle loses power for a second?

Are you asking about what happens if all the power goes out or are you asking how they get state back? If everything reboots it’s fine. On restart the computers will look at all the sensors add project the state of now. There is no reason to keep the state of the past is there? Why does it matter where the craft was 5 minutes before? What matters is what is what is in front of them and the future right? If you tell t…

I'm reminded of the quote from Linus:

"Real men don’t use backups, they post their stuff on a public ftp server and let the rest of the world make copies."

Real programmers don't use persistent storage, they just rely on physical reality in general.

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

#156
post #129

Earlier quoted context omitted.

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.

The same hardware failure can cascade too; redundancy alone is not a panacea, you need some safeguards. Ideally, nothing should fully trust anything else.

I was just reading that they design the rocket so that one engine could explode without affecting the others (hopefully) and they test the engines by dropping a nut or bolt or something in, which is not something rocket engines normally can tolerate.

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

#157
post #129

Earlier quoted context omitted.

The same hardware failure can cascade too; redundancy alone is not a panacea, you need some safeguards. Ideally, nothing should fully trust anything else.

Maybe cascade was the wrong word. I meant that if you pop in a hot spare and it's running the same software, there's a good chance it will encounter the same issue, sometimes immediately.

In some cases redundant software is developed independently by different teams to the same spec; I think I read about that with the Space Shuttle.

How correlated are your layers of swiss cheese...?

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

#158
post #148
post #34

A slight inaccuracy: the flight strings are not x86, but ARM, running on a custom board. Also, only the actual graphical display application uses Chromium/JS. The rest of the system is all C++. The display code has 100% test coverage, down to validation of graphical output (for example if you have a progress bar and you set it to X% the tests verify that it is actually drawn correctly).

How is that done? By pixelwise comparison with a test image?

I'm curious about this as well. From what I remember chromium does what you suggest to verify what is rendered down to the pixel: https://developers.google.com/web/updates/2020/02/chromium-c...

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

#159
post #126

Earlier quoted context omitted.

What happens if some anomaly happens where the shuttle loses power for a second?

Are you asking about what happens if all the power goes out or are you asking how they get state back? If everything reboots it’s fine. On restart the computers will look at all the sensors add project the state of now. There is no reason to keep the state of the past is there? Why does it matter where the craft was 5 minutes before? What matters is what is what is in front of them and the future right? If you tell t…

It'd have to know that it's destination was earth, or does it just sit idle after a power on and wait for the command? What happens if the astronauts are asleep? I feel like it needs some persisted data.

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

#160

Earlier quoted context omitted.

Is there a backup should that fancy display fail? If not, then I'd hardly call it "superfluous to mission success".

Apparently the physical controls below the screens can perform all of the mission critical functions in the event of a display failure.

If only browsers had a similar fallback.
Post reply on HN