The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.
The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.
Patent No.:
Date of Patent:
Jun. 17, 2008
Filed:
Jun. 26, 2005
Alexander T. Garthwaite, Beverly, MA (US);
David P. Stoutamire, Redwood City, CA (US);
Peter B. Kessler, Palo Alto, CA (US);
Y Srinivas Ramakrisha, Union City, CA (US);
David L. Detlefs, Westford, MA (US);
Antonios Printezis, Burlington, MA (US);
Jon A. Masamitsu, Livermore, CA (US);
John W. Coomes, Felton, CA (US);
Alexander T. Garthwaite, Beverly, MA (US);
David P. Stoutamire, Redwood City, CA (US);
Peter B. Kessler, Palo Alto, CA (US);
Y Srinivas Ramakrisha, Union City, CA (US);
David L. Detlefs, Westford, MA (US);
Antonios Printezis, Burlington, MA (US);
Jon A. Masamitsu, Livermore, CA (US);
John W. Coomes, Felton, CA (US);
Sun Microsystems, Inc., Santa Clara, CA (US);
Abstract
A heap may be marked and compacted while performing only two passes over the objects and object references in the heap. Specifically, objects and object references are traversed once during a marking phase and again during a compaction phase of split-reference, two-pass mark-compaction. Object references are updated in two steps. First, during marking, each object reference may be updated to include the relative offset within its block of the referenced object and-during compaction that offset may be added to the block's destination address resulting in a reference that points to the actual post-compaction location for the referenced object. Objects of a particular block may be rearranged, or permuted, with respect to each other within the block. However, the order between groups of objects in different blocks may be preserved across compaction.