Claims Analysis
Total Claims: 23
Claim 1
Independent Claim
42 words
A method of run-time tracking of object references in computer code comprising: assigning a bit within a bit vector for an ambiguously typed variable; and maintaining said bit dynamically during code execution to indicate whether said variable is assigned a reference value.
Claim 2
Independent Claim
42 words
A method of run-time tracking of object references in computer code comprising: assigning a bit within a bit vector for an ambiguously typed variable; and maintaining said bit dynamically during code execution to indicate whether said variable is assigned a reference value.
Claim 3
Dependent Claim
21 words
The method of claim 1 further comprising scanning said bit vector to determine if any ambiguously typed variables contain reference values.
Claim 4
Dependent Claim
13 words
The method of claim 1 further comprising freeing space used by dead objects.
Claim 5
Dependent Claim
11 words
The method of claim 1 further comprising initializing said bit vector.
Claim 6
Dependent Claim
23 words
The method of claim 4 wherein initializing comprises setting a corresponding bit in said bit vector for a variable containing a reference value.
Claim 7
Dependent Claim
23 words
The method of claim 4 wherein initializing comprises clearing a corresponding bit in said bit vector for a variable containing a non-reference value.
Claim 8
Dependent Claim
31 words
The method of claim 1 wherein maintaining said bit to indicate whether said variable is assigned a reference value comprises setting said bit when said variable is assigned a reference value.
Claim 9
Dependent Claim
31 words
The method of claim 1 wherein maintaining said bit to indicate whether said variable is assigned a reference value comprises clearing said bit when said variable is assigned a non-reference value.
Claim 10
Dependent Claim
13 words
The method of claim 1 further comprising computing a set of live objects.
Claim 11
Dependent Claim
35 words
The method of claim 9 wherein computing a set of live object comprises: examining global variables, registers, and a run-time stack; and locating all references that can be reached from said set of live objects.
Claim 12
Dependent Claim
16 words
The method of claim 10 wherein locating all references comprises traversing a graph of reachable objects.
Claim 13
Independent Claim
54 words
A method of garbage collection comprising: maintaining a bit dynamically within a bit vector to indicate whether an ambiguously typed variable is assigned a reference value; scanning said bit vector to determine if said variable contains a reference value; and including said variable in a root set if said variable contains a reference value.
Claim 14
Independent Claim
54 words
A method of garbage collection comprising: maintaining a bit dynamically within a bit vector to indicate whether an ambiguously typed variable is assigned a reference value; scanning said bit vector to determine if said variable contains a reference value; and including said variable in a root set if said variable contains a reference value.
Claim 15
Dependent Claim
20 words
The method of claim 12 further comprising traversing said root set to find reachable objects in a first memory region.
Claim 16
Dependent Claim
13 words
The method of claim 12 further comprising reclaiming space occupied by dead objects.
Claim 17
Dependent Claim
17 words
The method of claim 12 further comprising allocating space in a second memory region for reachable objects.
Claim 18
Dependent Claim
17 words
The method of claim 15 further comprising copying contents of reachable objects to said second memory region.
Claim 19
Dependent Claim
29 words
The method of claim 16 further comprising updating memory references pointing to reachable objects in said first memory region to refer to reachable objects in said second memory region.
Claim 20
Dependent Claim
62 words
A computer readable medium having embodied thereon a computer program, the computer program being executable by a machine to perform a method of run-time tracking of object references in computer code comprising: assigning a bit within a bit vector for an ambiguously typed variable; and maintaining said bit dynamically during code execution to indicate whether said variable is assigned a reference value.
Claim 21
Dependent Claim
62 words
A computer readable medium having embodied thereon a computer program, the computer program being executable by a machine to perform a method of run-time tracking of object references in computer code comprising: assigning a bit within a bit vector for an ambiguously typed variable; and maintaining said bit dynamically during code execution to indicate whether said variable is assigned a reference value.
Claim 22
Dependent Claim
32 words
The method of claim 18 further comprising: creating a root set; traversing said root set to find reachable objects in a first memory region; and freeing memory space occupied by dead objects.
Claim 23
Dependent Claim
35 words
The method of claim 19 wherein creating a root set comprises scanning said bit vector to determine which ambiguously typed variables contain reference values and including said variables containing reference values into said root set.