Patent ID: 8286152

Claim:
A just in time compilation method for a virtual machine environment coupled to a memory, comprising: identifying a program structure for compilation; creating a low optimization compiled version of the program structure that is relocatable in the memory, wherein the low optimization compiled version of the program structure does not have a fixed address and is not directly executable; storing into a persistent cache the low optimization compiled version of the program structure that is relocatable; relocating the low optimization compiled version of the program structure into a virtual machine address space in the memory, wherein relocating the low optimization compiled version of the program structure includes transforming the low optimization compiled version to a compiled version with fixed addresses in the memory that can be executed; responsive to a determination that a relocatable code version of the program structure already exists in the persistent cache, loading the relocatable code version of the program structure from the persistent shared cache; and relocating the loaded relocatable code version of the program structure into a current address space, including transforming the low optimization compiled version of the program structure to a compiled version of the program structure with fixed addresses in the memory that can be executed; assigning a priority to the program structure, wherein a higher initial compilation optimization level is assigned a lower priority and a lower initial compilation optimization level is assigned a higher priority; placing the an entry associated with the prioritized program structure in a queue; and retrieving the prioritized program structure from the queue in response to a compilation thread processing the assigned priority, wherein the memory includes a plurality of fixed addresses, each fixed address of the plurality of fixed addresses capable of being transformed regardless of where in the memory the low optimization compiled version of the program structure is loaded.