Method and apparatus for run-time in-memory patching of code from a service processor
First Claim
Patent Images
1. A method for patching a program, comprising:
- identifying an item loaded in memory to be patched, the item associated with a program loaded in memory;
storing a patch for the item in volatile memory;
directing the program to the patch to cause the program to implement the patch while maintaining state for the program and without suspending execution of the program.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods and apparatuses enable in-memory patching of a program loaded in volatile memory. A service processor identifies a program to be patched and an associated patch for the program. The patch is loaded into memory, including applying relocation fix-ups to the patch. The service processor directs the program to the patch in place of the segment of the program to be patched. The program implements the patch while maintaining program state, and without suspending execution of the program.
142 Citations
24 Claims
-
1. A method for patching a program, comprising:
-
identifying an item loaded in memory to be patched, the item associated with a program loaded in memory; storing a patch for the item in volatile memory; directing the program to the patch to cause the program to implement the patch while maintaining state for the program and without suspending execution of the program. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. An article of manufacture comprising a machine-readable medium having content stored thereon to provide instructions to result in a device performing operations including:
-
receiving a patch from a patch source to apply to a program loaded in volatile memory; replacing inline an instruction of the program with a jump to the patch. - View Dependent Claims (12, 13, 14, 15, 16, 17)
-
-
18. A service processor comprising:
-
a receiver to receive an indication of a program to patch, identify a segment of the program in virtual memory to be patched, and identify a patch for the segment of the program; a patch application module coupled to the receiver to apply relocation fix-ups to the patch, load the patch into volatile memory, and direct the program to the patch in place of the segment of the program to apply the patch in-memory without reloading the program into volatile memory. - View Dependent Claims (19, 20, 21)
-
-
22. A system comprising:
-
a patch agent having a receiver to receive an indication of a program to patch, identify a segment of the program in virtual memory to be patched, and identify a patch for the segment of the program;
a registration module to register the program prior to receiving the indication of the program to patch; and
a patch application module coupled to the receiver to apply relocation fix-ups to the patch, load the patch into volatile memory, and direct the program to the patch in place of the segment of the program to apply the patch in-memory without reloading the program into volatile memory.a flash storage coupled to the patch agent to store the registration information for the program. - View Dependent Claims (23, 24)
-
Specification