System and method for on-line replacement of software
AssigneeHewlett-Packard Company
InventorMichael L. Saboff
Life of this patent
Estimating the term…
Loading patent…
AssigneeHewlett-Packard Company
InventorMichael L. Saboff
Estimating the term…
A system for changing a software library during the execution of a software application using the software library. The software application interfaces to the software library only through the use of an interface library, to ensure that the software application does not directly bind with the software library. With no direct binding the software library can be updated during runtime without the software application re-resolving the location of the software library. The update is triggered by a change of the version number in a registry. The program correctness is maintained by library management services ensuring that the software library is no longer in use by the application before updating to the new library. Memory management services are used to ensure that the state of the library is maintained between the old and the updated versions of the software library.
A shared library system embodied in a computer to support dynamic on-line replacement of a shared software library in the computer while preserving application program compatibility, the system comprising:
A method of implementing on-the-fly replacement of an implementation library so as to allow updating the implementation library while maintaining correct operation of an application that uses a software routine within the implementation library, the replacement method comprising the steps of:
An on-the-fly replaceable implementation library for use in a replaceable software system embodied in a computer, the implementation library comprising:
A proxy interface library for use in a replaceable software system embodied in a computer, the proxy interface library being associated with a corresponding implementation library and comprising:
A pointer linkage table stored in a machine readable medium for directing an application running on a computer to either a proxy interface library or an implementation library, the pointer linkage table comprising at least one pointer entry, each pointer entry pointing to the proxy interface library so that the application, in accordance with the pointer linkage table, calls the implementation library unless the implementation library is being updated, in which case the application calls the proxy interface library if the implementation library is being modified, otherwise the pointer entry pointing to the implementation library.
Dependencies are inferred from the claim text.