Patent ID: 7058781
Filing Date: 2006-06-06
Classification: G06F,Y10S

Abstract:
1. A method of garbage collection comprising: A) providing a computer system that includes memory and executes a mutator that modifies references in a dynamically allocated heap in the memory; B) configuring the computer system to act as a garbage collector that: i) treats the heap as divided into a plurality of generations, including at least one young generation and at least one old generation; ii) treats the old generation as divided into cards; iii) maintains a card table, comprising a plurality of card-table fields of which each is associated with a respective card and card range, in which the mutator indicates where it has modified references, a value contained in each card-table field being one of a plurality of possible entry values that include at least one clean-indicating value, at least one non-clean-indicating value, at least one current-younger-generation-and-non-clean-indicating value, and a plurality are younger-generation-indicating values; and iv) performs young-generation collections in each of which the garbage collector performs a reachable-object-identification operation, in which it identifies selected objects in the young generation, and reclaims memory space in the young generation not occupied by objects thus identified, the reachable-object-identification operation including performing in a plurality of garbage-collection threads an old-generation-scanning operation, in which the garbage collector identifies objects in the young generation referred to by old-generation references, the objects thus identified sometimes being promoted into the old generation and sometimes remaining in the young generation, the old-generation-scanning operation including: C) employing the computer system to execute the garbage collector.