I do realise that a similar question was asked yesterday about hacking voyager. But it’s how the steps happen which stumps me. I get that we communicate using radio signals. I get that all computers need memory and so you need to split the memory up. I get that all computers fetch instructions, decode them, and run them. But how can you use a computer to rewrite its own code? How can you get voyager to split up it’s memory while it’s still in action?
References:
The nasa blog
Jim keller interview on wan show
Numberphile how machine code works video
In: Technology
Any modern computer needs to be able to rewrite its own code. Before your computer booted it needed to fetch the OS code and load it into memory. To post this you needed to load a browser from the drive into memory, then you needed to load the site, and load and run the JavaScript code. All executable code is stored in memory and memory can be accessed as just data.
There is an extra step to this though, at some points in the code it says “Run this function”. However “this function” is in the busted memory, so they need to locate everywhere this occurs and update it so it knows that “this function” has moved somewhere else. This is a relatively simple job, they already know where all the code is in memory, so they can re-build the code with the updated locations, get the difference between them and just command it to update just the modified parts.
I don’t recall exactly how they do it, but there could be several ways to do it. Modern craft have multiple processors and memory systems so they could write the new code to the backup, verify it, then switch to the backup, then write over the primary once it works properly.
Another way could be to write over unneeded code blocks from experiments that have been shutdown. Camera transmission and pointing code? Cameras were shutdown and froze up years ago. That memory space could be written over.
Latest Answers