Method and system for replacing instructions and instruction blocks in computer code
First Claim
Patent Images
1. A method for inserting one or more instructions into memory-resident machine code stored in the memory of a computer, the method comprising:
- preparing, by a program-controlled processor of the computer, a block description of the one or more instructions, the description including, for each instruction of the one or more instructions, an instruction description including a constant-portion value and descriptions of each variable portion, wherein the descriptions for each variable portion further includes a supplied variable-portion value and a shift value for shifting the supplied variable-portion value;
for each instruction description in the block description, building, by the program-controlled processor of the computer, a memory-resident instruction from the constant-portion value and descriptions of each variable portion; and
inserting the memory-resident instruction into the memory-resident machine code.
1 Assignment
0 Petitions
Accused Products
Abstract
Various embodiments of the present invention are directed to efficient methods by which virtual-machine monitors can introduce instructions into guest-operating-system code. In one embodiment of the present invention, the virtual-machine monitor builds instructions dynamically, at insertion time, using specified values for fields within the instruction. In one embodiment of the present invention, the instructions and instruction field values are stored in an instruction-block-representing data structure.
24 Citations
7 Claims
-
1. A method for inserting one or more instructions into memory-resident machine code stored in the memory of a computer, the method comprising:
-
preparing, by a program-controlled processor of the computer, a block description of the one or more instructions, the description including, for each instruction of the one or more instructions, an instruction description including a constant-portion value and descriptions of each variable portion, wherein the descriptions for each variable portion further includes a supplied variable-portion value and a shift value for shifting the supplied variable-portion value; for each instruction description in the block description, building, by the program-controlled processor of the computer, a memory-resident instruction from the constant-portion value and descriptions of each variable portion; and
inserting the memory-resident instruction into the memory-resident machine code. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
Specification