3 ms·
> If it knew, it wouldn't have to contact anything in order to update itself. It would already have known. Eh? That's how most package managers work. They only
by shakna 6y ago
> If it knew, it wouldn't have to contact anything in order to update itself. It would already have known.
Eh? That's how most package managers work. They only issue a very small number of commands to put them into an "updated" state. They don't generally do arbitrary things.
For example, if we take a look into aptitude, the deb packages it eventually fetches after running various authentications, contains:
+ A directory listing. (Contents-<arch>.gz)
+ Paths and checksums. (Release)
+ Signing information.
It doesn't have an arbitrary listing of commands to put it into the "updated" set - that's already decided by the format. The machine _does_ know the sequence of actions that is necessary. You don't need some kind of Turing complete monstrosity that can do absolutely anything to update it.
In the case of a _firmware update_ that's even simpler! Most of the time you're either replacing a kernel, or flashing the firmware to a pre-decided memory address. Both of those actions are decided long before you even begin issuing updates.