4 ms·
""" On Self-Modifying Code and the Space Shuttle OS I was doing some reading about Metaprogramming and Self-modifying code at Wikipedia, a fascinating topic wi
by travmatt 9y ago
"""
On Self-Modifying Code and the Space Shuttle OS
I was doing some reading about Metaprogramming and Self-modifying code at Wikipedia, a fascinating topic with many uses from optimization, patching, and genetic programming.
And it reminded me of my days during the early 1990s working as a software engineer on the Space Shuttle operating system (FCOS). Many people don’t know that the Space Shuttle OS implements self-modifying code for the purpose of “fault-tolerance”.
...
An alternative to self-modifying or patching code is to use conditions (if statements) and local store (such as in-memory) to store flags that are used determine the paths to take (assuming such paths are known ahead of time, which might not be the case on genetic programming). Being the Space Shuttle a memory-limited, non-dynamic memory map and management environment, it is cheaper, less complex, and safer to patch specific instructions directly.
"""
http://weblog.cenriqueortiz.com/computing/2007/08/18/on-self-modifying-code-and-the-space-shuttle-os/ http://weblog.cenriqueortiz.com/computing/2007/08/18/on-self...
It sounds useful in the appropriate contexts, much like every other technique.