Apparently Lucid
Member
- Jan 18, 2020
- 90
- 29
- 21
I found this link about the Apollo computer and updating it in-flight fascinating.
A deep dive into the Apollo Guidance Computer, and the hack that saved Apollo 14
Here's a sample -- AGC is Apollo Guidance Computer:
Itās common to find that the AGC is often described as a mere calculator, or compared to a controller chip suitable for a watch or microwave. Looking at your watch, it tells the time and little else. The chip that drives the microwave blindly starts and stops the magnetron to heat expired Kung Pao chicken. In these devices, there is a very limited interaction with the surrounding hardware, no sophisticated computation, and no decision-making of any note.
In describing a "computer," one expects that the system would include the abilities we attribute to contemporary computersāthe ability to run several programs at once, for example, or to present a simple yet intuitive interface, to control a wide variety of devices, and to gracefully recover from application errors. āHa!ā you might exclaim, āI carry a computer like that in my pocket!ā
The idea of such capabilities being available nearly 60 years ago stretches credulity, but the Apollo Guidance Computer had these features and more. An interpreter to process āvirtualā machines, similar to Java byte code? Check. The ability for remote data updates? Yup. Given all of these capabilities and more, itās quite reasonable to argue that the AGC compares favorably with a modern smartphone. Yes, the AGC is slower and has far less memory, but that is only due to its unfortunate timing at birth, being at the wrong end of the Mooreās Law curve
--
In most hacks that defile our computers, tablets, and cellphones, a traditional vector is through new code that is introduced and executed. Directly modifying existing code, or introducing new software to influence the logic of a system, are the standard and most straightforward forms of alteration. But the AGC had all of its programming stored in core ropeāan irreversible form of ROM where the programming is quite literally manufactured into the hardware. Code changes were impossible.
The only way to implement any kind of workaround was to āspoofā the computer to use different-but-already-existing logic, by manipulating only status bits and variables. This was the magic behind hacking Apollo 14ās computer.
A deep dive into the Apollo Guidance Computer, and the hack that saved Apollo 14
Here's a sample -- AGC is Apollo Guidance Computer:
Itās common to find that the AGC is often described as a mere calculator, or compared to a controller chip suitable for a watch or microwave. Looking at your watch, it tells the time and little else. The chip that drives the microwave blindly starts and stops the magnetron to heat expired Kung Pao chicken. In these devices, there is a very limited interaction with the surrounding hardware, no sophisticated computation, and no decision-making of any note.
In describing a "computer," one expects that the system would include the abilities we attribute to contemporary computersāthe ability to run several programs at once, for example, or to present a simple yet intuitive interface, to control a wide variety of devices, and to gracefully recover from application errors. āHa!ā you might exclaim, āI carry a computer like that in my pocket!ā
The idea of such capabilities being available nearly 60 years ago stretches credulity, but the Apollo Guidance Computer had these features and more. An interpreter to process āvirtualā machines, similar to Java byte code? Check. The ability for remote data updates? Yup. Given all of these capabilities and more, itās quite reasonable to argue that the AGC compares favorably with a modern smartphone. Yes, the AGC is slower and has far less memory, but that is only due to its unfortunate timing at birth, being at the wrong end of the Mooreās Law curve
--
In most hacks that defile our computers, tablets, and cellphones, a traditional vector is through new code that is introduced and executed. Directly modifying existing code, or introducing new software to influence the logic of a system, are the standard and most straightforward forms of alteration. But the AGC had all of its programming stored in core ropeāan irreversible form of ROM where the programming is quite literally manufactured into the hardware. Code changes were impossible.
The only way to implement any kind of workaround was to āspoofā the computer to use different-but-already-existing logic, by manipulating only status bits and variables. This was the magic behind hacking Apollo 14ās computer.