Safe and predictable dynamic software updating


safe and predictable dynamic software updating-34

To dynamically update an operating system, a new factory object may have one or more new and/or updated object instances. An operating system is a computer program that is the first piece of software that a computer executes when a computing device is turned on.

A corresponding old factory object is then located and its version is checked for compatibility. Operating systems are no longer limited to mainframe and desktop computers: mobile telephones and various other portable devices now use operating systems to enable and manage multiple different functionalities of their host device, so the term computer system is not limited to a traditional mainframe/desktop device.

This reference describe a replugging mechanism for incremental and optimistic specialization, but the reference assumes there can be at most one thread executing in a swappable module at a time. 12-14, 2005, Long Beach, Calif.) describes a formal model for dynamic update in C-like languages using pre-computed safe update points present in the code.

In later work, that constraint is relaxed but does not scale. Some commercial operating systems offer features similar to SunĀ® Microsystems' Solaris Live Upgrade, which allows changes to be made and tested without affecting the running system, but requires a reboot for changes to take effect.

A consistent application program interface (API) allows developers of application software to write code on one computer system and have a high level of confidence that it will run on another computer system using the same operating system, even if the amount of memory, the quantity of storage, or even the computing architecture is different on the two computer systems.