Software for updating
Current operating systems and programming languages are typically not designed with DSU in mind.
As such, DSU implementations commonly either utilize existing tools, or implement specialty compilers.
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.
Some DSU systems require neither static analysis nor specialty compilers.
Programs that are updated by a DSU system are referred to as target programs.
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.
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.