I don’t know what they used on the moon landing, though.
An efficient, real-time multitasking software stack on a 2MHz processor with the equivalent of ~4K of RAM and 64K of ROM.
Smart enough to handle being accidentally overloaded by its operators and still balance a spacecraft on a single engine and land on the moon while doing multiple reboots to clear its software stack. It would work its way down a list of “fly a spacecraft” tasks from critical, to informational, to just monitoring, with a certain amount of time allocated to complete the whole list. If it ran out of time, it would drop everything, perform the equivalent of a reboot with navigation parameters parked in memory, and then start again at the most critical task.
Apollo 11’s crew accidentally left their rendezvous radar (which was checking on the location of the command module in orbit) in a mode that constantly poked the computer with “pay attention to me” interrupts, and it couldn’t service the radar and run through it’s task list completely while it was on descent to the lunar surface.
To the programming team’s credit, this just caused an overload alarm a few times and the mission completed successfully.
The Apollo programmers pretty much created the whole software engineering field from scratch in the 10 years before 1969.
An efficient, real-time multitasking software stack on a 2MHz processor with the equivalent of ~4K of RAM and 64K of ROM.
Smart enough to handle being accidentally overloaded by its operators and still balance a spacecraft on a single engine and land on the moon while doing multiple reboots to clear its software stack. It would work its way down a list of “fly a spacecraft” tasks from critical, to informational, to just monitoring, with a certain amount of time allocated to complete the whole list. If it ran out of time, it would drop everything, perform the equivalent of a reboot with navigation parameters parked in memory, and then start again at the most critical task.
Apollo 11’s crew accidentally left their rendezvous radar (which was checking on the location of the command module in orbit) in a mode that constantly poked the computer with “pay attention to me” interrupts, and it couldn’t service the radar and run through it’s task list completely while it was on descent to the lunar surface.
To the programming team’s credit, this just caused an overload alarm a few times and the mission completed successfully.
The Apollo programmers pretty much created the whole software engineering field from scratch in the 10 years before 1969.