| Computers have been in wide use these years, especially in security and mission critical fields such as in telecommunications and air traffic control systems. But the systems of these computers can not afford any down time for maintenance, upgrade and big-fixing reasons. Then Software hot-swapping is put forth. A system with hot-swapping can be self-diagnose and self-modify such that it can notice performance and runtime incorrectness, pinpoint their causes, and react accordingly. These abilities can increase performance, uptime, and security, while simultaneously reducing the effort and knowledge required of system administrators. For already-complex pieces of code such as operating systems, hot-swapping provides a simpler, higher performance, and more maintainable method of achieving autonomic behavior.Firstly, the concept of software hot-swapping is introduced as well as the usual five steps for achieving an application with hot-swapping, then the advantages of hot-swapping in autonomic computing systems is explained by contrasting it with adaptive code. Also the effect on improving performance of computer system with hot-swapping is mentioned.Secondly, a kind of system architecture of software hot-swapping based on swap manager is put forward, including monitoring module, swap manager module and function module, of which each is described.Thirdly, two types of software hot-swapping implementation method is studied: run time environment modification method and design pattern method. Then the key problems regarding to design and implemention of hot-swapping are discussed, and the general solutions are suggested.Finally, the design of software hot-swapping based on swap manager is put forth, including the general design of swap manager and the detailed design of hot-swappable modules. And then experiment is done to testify validity of the method. At last, the conclusion is drawn and the farther researches on this issue are put forward. |