Patent ID: 6338073
Filing Date: 2002-01-08
Classification: G06F,Y10S

Abstract:
A concurrent garbage collection and marking method for traversing data structures formed of data objects linked by identifying pointers in a contiguous heap memory, with garbage collection of data objects classed as deletable, the method comprising the steps of:a) for a selected root object, traversing the pointers carried thereby to determine the objects linked to the root object; and b) traversing pointers to determine further objects linked to those identified by the previous step; wherein step b) is repeated until no further pointers remain to be traversed, in such a fashion that, I. the objects identified therein are classed as marked, II. all remaining objects in the heap are classed as unmarked unless already classed as such due to an earlier traversal operation in which case they are classed as deletable, III. some of the heap data objects carry finalisers, IV. some further objects are identified as potentially reachable by finalisers which objects are classed as pending, and V. at the end of each sweep, A) those objects classed as marked are reclassed as unmarked, B) those objects classed as unmarked are reclassed as pending, C) those objects classed as pending are reclassed as deletable, and D) those objects already classed as deletable are deleted.