Patching of in-use functions on a running computer system
AssigneeMicrosoft Corporation
InventorsGarret J. Buban, Paul V. Donlan, Adrian Marinescu, Thomas D. McGuire, David B. Probert, Hoi H. Vo, Zheng Wang
Life of this patent
Estimating the term…
Loading patent…
AssigneeMicrosoft Corporation
InventorsGarret J. Buban, Paul V. Donlan, Adrian Marinescu, Thomas D. McGuire, David B. Probert, Hoi H. Vo, Zheng Wang
Estimating the term…
A system and method for automatically updating software components on a running computer system without requiring any interruption of service. A software module is hotpatched by loading a patch into memory and modifying an instruction in the original module to jump to the patch. A coldpatching technique places a coldpatch version of the module on disk for subsequent loading by processes, after hotpatching occurred. The coldpatch has the entry points to its functions at the same relative locations within the module as the hotpatch, which facilitates subsequent hotpatching. A hotpatch and coldpatch are automatically generated by deriving differences between changed and original binary files, and establishing the point to insert the jump. Validation is performed to ensure that the hotpatch is applied to the correct version, and that the coldpatch is replacing the correct version. Version management is also provided to control the number of patches via support rules.
In a computing environment, a method comprising:
In a computing environment, a method comprising:
In a computing environment, a system comprising:
In a computing environment, a system comprising:
In a computing environment, a method comprising:
Dependencies are inferred from the claim text.