Method and apparatus for pre-allocation of system resources to facilitate garbage collection
AssigneeHewlett-Packard Company
InventorsSalil Pradhan, Mark D. Hennecke, Michey N Mehta, Ruslan Meshenberg
Life of this patent
Estimating the term…
Loading patent…
AssigneeHewlett-Packard Company
InventorsSalil Pradhan, Mark D. Hennecke, Michey N Mehta, Ruslan Meshenberg
Estimating the term…
A generational garbage collection tool and method for a computer system that pre-allocates computer resources during compile-time for later use by a generational garbage collector at run-time. The invention reduces the overall cost of dealing with long-lived objects and thereby allows a generational garbage collector to focus deallocation efforts on young objects, which are more likely to be dead. The present embodiment reduces pause time to a level that does not disturb interactive users. The embodiment allocates space for interior pointers at compile-time when the location of interior pointers is known and thereby facilitates generational garbage collection. By enabling the use of threaded interior pointers during generational garbage collection, live object relocation is improved by requiring an update to one pointer instead of updating each pointer that references an object. The present embodiment identifies the pointers that may be updated due to generational garbage collection, and by selectively allocating space to only those pointers that may be accessed during generational garbage collection and not all pointers, computer resources are saved. Further, the present embodiment may include locking information in the pointer to determine whether the object is presently being updated and is therefore locked.
A collection tool, in a computer system having resources, an object, and a compilation system;
A method for pre-allocating resources in a computer system;
An article of manufacture comprising a program storage medium having computer readable program code embodied therein for pre-allocating resources in a computer system;
A computer readable memory device encoded with a data structure having entries, for pre-allocating resources in a computer system having an object entry, and a compilation system entry;
Dependencies are inferred from the claim text.