Dynamic software updating michael hicks
Since few programs are written with support for dynamic updating in mind, retrofitting existing programs is a valuable means of evaluating a DSU system for practical use.The problem space addressed by dynamic updating can be thought of as an intersection of several others.In the event of a failure, the hot spare would take over, and the main machine would become the new hot spare. In the event of an update, the hot spare would activate, the main system would update, and then the updated system would resume control.
As an example, a database that must be backward-compatible with previous versions of its on-disk file format, must accomplish the same type of state transformation expected of a dynamic updating system.
While these analyses prove properties of programs that are valuable for DSU, they are by nature sophisticated and difficult to understand.
DSU systems that do not use a static analysis might require use of a specialized compiler.
These systems contain a main machine and a hot spare.
The hot spare would be periodically seeded with a checkpoint of the primary system.