What does SpaceX use to send astronauts to the space station?

In a disaster year, there are still wonderful moments. May 30 marked a new milestone for the US aerospace industry when Crew Dragon, the first private spacecraft to successfully bring American astronauts to the ISS space station. This spacecraft was launched into space using the SpaceX reusable rocket 9 of SpaceX.

So what helped Falcon 9 do this? In a way, thanks to liquid oxygen, flammable fuels and Linux - the operating system for supercomputers, IoT devices, and countless other important devices - and three older CPUs .

Picture 1 of What does SpaceX use to send astronauts to the space station?
The Falcon 9 rocket is launched, sending the Crew Dragon spacecraft into space

Old CPUs

Different from what people think of a seemingly advanced thing like the Falcon 9 rocket, its operating system is actually a stripped down version of Linux running on three old dual-core x86 processors . Its flight control software runs on a separate processor and is written in C / C.

Old and banal? Right. Spacecraft CPUs are not the latest or most powerful processors. They were developed for spacecraft - vehicles that take years, even decades, to go from draft designs to a rocket on launch pads. Therefore, they are often quite old - if not more ancient than consumer electronics.

For example, the ISS space station is still using Intel 80368SX 20 MHz CPUs developed since 1988. However, we do not know exactly what processor Falcon 9 uses. But it is almost certain that their designs are a decade older than the computers sold in electronics stores.

Picture 2 of What does SpaceX use to send astronauts to the space station?
Spacecraft CPUs are not the latest or most powerful processors. (Illustration).

Of course, with the exception of executing control commands on multiplexer-demultiplexer or MDM circuits , these aging chips do nothing else. For daily work, astronauts will use the HP Zbook 15s running Debian Linux, Scientific Linux, and Windows 10 . While Linux operating systems act as remote control terminals to issue commands to MDM circuits, the Windows operating system is used for email, web and entertainment.

Even so old, the chips used in outer space are not ordinary types. They must undergo specific annealing process to combat radiation. Otherwise, they will quickly fail under the influence of ionizing radiation and cosmic rays.

So these chips will take years of design and years to test before they can be certified to work in space. For example, NASA expects its multi-purpose, next-generation chips, the ARM A53 processor - used on the Raspberry Pi 3 board from 2016 - to be ready by 2021. While Meanwhile, the first floor of the Falcon 9 will return to Earth for reuse so it does not need to undergo the annealing process.

Picture 3 of What does SpaceX use to send astronauts to the space station?
Recovered after launch, the control chip on the Falcon 9 does not need to be tempered during radiation protection.

Be safe by using the "remind me 3 times" method

But why need 3 processors? As explained on the StackExchange Space Exploration forum, SpaceX uses the Actor-Judge model to bring safety through redundant design.

Under this model, every time a decision is made, it is compared to the results from other processing cores. If there is any disagreement, the decision will be revoked and the process will be started again. Only when all processors give the same answer will a command be sent to PowerPC microcontrollers.

These controllers, which act as the ignition command to start the rocket engine, will receive commands from each of the x86 processors above. If the sequence of 3 statements is identical, the microcontroller of the engine will execute the statement, but if only one of the 3 statements is broken, the controller will execute in the previous correct sequence. If things get worse, Falcon 9 will ignore all inappropriate commands from the chip.

Picture 4 of What does SpaceX use to send astronauts to the space station?
Although the touch screen control interface is very convenient, the buttons are redundant in case the touch malfunctions.

A special feature of this seemingly redundant "reminding me" process is the ability to avoid errors without having to pay for expensive chips dedicated to space missions. Today's modern airplanes, like the new Airbus aircraft, use the same approach to their flight control systems.

Not only the Falcon 9 rocket, the Crew Dragon spacecraft itself also uses Linux with flight software written in C. The ship's touch screen interface is rendered using Chromium and JavaScript. Therefore, if there is a problem with the touch screen, astronauts still have physical buttons to control the spacecraft.

Thanks again to Linux, the unsung hero of the world, the operating platform for the systems underneath the countless vital activities today.