Software for updating
Examples include checkpointing, dynamic linking, and persistence.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.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.For example, any update safety check limits the scope of updates to updates which pass that safety check.The mechanism used to transform code and state influences what kinds of updates a system will support.
This enabled DYMOS to type-check updates against the existing program.
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.
The earliest true Dynamic Software Updating system is DYMOS (Dynamic Modification System).
In computer science, dynamic software updating (DSU) is a field of research pertaining to upgrading programs while they are running. However, researchers have developed a wide variety of systems and techniques for implementing DSU.
These systems are commonly tested on real-world programs.