CPC G06F 21/54 (2013.01) [G06F 8/434 (2013.01); G06F 9/44568 (2013.01); G06F 9/45558 (2013.01); G06F 21/125 (2013.01); G06F 21/126 (2013.01); G06F 2009/45587 (2013.01)] | 32 Claims |
1. A data processing system comprising:
memory to store instructions which, when executed, provide a virtual machine; one or more processors to execute the instructions, wherein the instructions cause the one or more processors to:
load program code into the virtual machine;
identify a pointer within the program code loaded into the virtual machine, the pointer having a first value;
modify, during execution of the program code in the virtual machine, the pointer with a first key value to change the pointer to a second value; and
before a dereference of the pointer, apply a second key value to the pointer, wherein the pointer is restored to the first value when the first key value equals the second key value.
|