Claims Analysis
Total Claims: 24
Claim 1
Independent Claim
162 words
A method of reducing execution write/read barrier procedures in a computer system, comprising the steps of: (A) storing in a computer memory objects and object references for accessing the objects, each object reference including a State flag; (B) executing instructions stored in the computer memory, a subset of the executed instructions having associated therewith a write/read barrier procedure; wherein each instruction in the subset processes an object reference to a respective one of the objects stored in the computer memory; (C) when executing each instruction that has an associated write/read barrier procedure, (C1) determining whether the State flag of the object reference being processed is set to a first predefined value; (C2) when the determination in step C1 is positive, skipping execution of the write/read barrier procedure associated with the instruction being executed and proceeding with execution of a next instruction; and (C3) when the determination in step C1 is negative, executing the write/read barrier procedure associated with the instruction being executed.
Claim 2
Independent Claim
162 words
A method of reducing execution write/read barrier procedures in a computer system, comprising the steps of: (A) storing in a computer memory objects and object references for accessing the objects, each object reference including a State flag; (B) executing instructions stored in the computer memory, a subset of the executed instructions having associated therewith a write/read barrier procedure; wherein each instruction in the subset processes an object reference to a respective one of the objects stored in the computer memory; (C) when executing each instruction that has an associated write/read barrier procedure, (C1) determining whether the State flag of the object reference being processed is set to a first predefined value; (C2) when the determination in step C1 is positive, skipping execution of the write/read barrier procedure associated with the instruction being executed and proceeding with execution of a next instruction; and (C3) when the determination in step C1 is negative, executing the write/read barrier procedure associated with the instruction being executed.
Claim 3
Dependent Claim
25 words
The method of claim 1, wherein step C3 further includes setting to the first predefined value the State flag in the object reference being processed.
Claim 4
Dependent Claim
29 words
The method of claim 2, wherein the steps of the method are performed by instruction execution logic, without execution of any instructions other than the object reference accessing instruction.
Claim 5
Dependent Claim
39 words
The method of claim 1, wherein step C3 further includes conditionally setting to the first predefined value the State flag in the object reference being processed when predefined criteria with respect to the object reference being processed are satisfied.
Claim 6
Dependent Claim
31 words
The method of claim 1, wherein the subset of the executed instructions having associated therewith a write/read barrier procedure are object reference write instructions having associated therewith a write barrier procedure.
Claim 7
Dependent Claim
99 words
The method of claim 1, each object stored in the computer memory having an object header with a State flag therein; the step of executing the write/read barrier procedure, in step C3, including: (C3A) accessing the object header of the respective object referenced by the object reference being processed and determining whether the State flag in the respective object's header is set to the first predefined value; and (C3B) when the determination in step C3A is positive, exiting the write/read barrier procedure; (C3C) when the determination in step C3A is negative, continuing with execution of the write/read barrier procedure.
Claim 8
Dependent Claim
31 words
The method of claim 6, wherein step C3B includes setting the State flag in the object reference being processed to the first predefined value prior to exiting the write/read barrier procedure.
Claim 9
Dependent Claim
33 words
The method of claim 6, wherein step C3C includes setting to the first predefined value the State flag in the object reference being processed and the State flag in the respective object's header.
Claim 10
Independent Claim
142 words
A method of executing an object reference write bytecode in a computer program in a computer system using generational garbage collection and a remembered set to store pointers to objects that may store references to other objects, comprising the steps of: (A) executing an object reference write bytecode by writing a specified object reference into a specified field of a target object identified by a target object reference; (B) testing a State flag in the target object reference to determine whether the State flag is set or clear; (C) when the testing step determines that the State flag in the target object reference is clear, invoking a predefined write barrier procedure to perform a predefined write barrier operation; (D) when the testing step determines that the State flag in the target object reference is set, proceeding with execution of a next bytecode.
Claim 11
Independent Claim
142 words
A method of executing an object reference write bytecode in a computer program in a computer system using generational garbage collection and a remembered set to store pointers to objects that may store references to other objects, comprising the steps of: (A) executing an object reference write bytecode by writing a specified object reference into a specified field of a target object identified by a target object reference; (B) testing a State flag in the target object reference to determine whether the State flag is set or clear; (C) when the testing step determines that the State flag in the target object reference is clear, invoking a predefined write barrier procedure to perform a predefined write barrier operation; (D) when the testing step determines that the State flag in the target object reference is set, proceeding with execution of a next bytecode.
Claim 12
Dependent Claim
29 words
The method of claim 9, wherein the steps of the method are performed by instruction execution logic, without execution of any bytecodes other than the object reference write bytecode.
Claim 13
Dependent Claim
133 words
The method of claim 9, further including executing the invoked write barrier procedure by: (E) testing a header State flag in a header of the target object to determine whether the header State flag is set or clear; (F) when the testing step determines that the header State flag in the target object reference is clear, adding a reference to the target object to a predefined remembered set data structure, and setting the header State flag and the State flag in the target object reference; (G) when the testing step determines that the header State flag in the target object reference is set, setting the State flag in the target object reference and exiting the write barrier procedure without adding a reference to the target object to the predefined remembered set data structure.
Claim 14
Dependent Claim
168 words
A computer system that include a garbage collection mechanism, comprising: a memory for storing objects and object references for accessing the objects, each object reference including a State flag; and a data processor for executing instructions stored in the computer memory, a subset of the executed instructions having associated therewith a write/read barrier procedure; wherein each instruction in the subset processes an object reference that references a respective one of the objects stored in the computer memory; the data processor including instruction execution logic that, when executing each instruction that has an associated write/read barrier procedure, (C1) determines whether the State flag of the object reference being processed is set to a first predefined value; (C2) when the State flag value determination is positive, skips execution of the write/read barrier procedure associated with the instruction being executed and proceeds with execution of a next instruction; and (C3) when the State flag value determination is negative, invokes execution of the write/read barrier procedure associated with the instruction being executed.
Claim 15
Dependent Claim
168 words
A computer system that include a garbage collection mechanism, comprising: a memory for storing objects and object references for accessing the objects, each object reference including a State flag; and a data processor for executing instructions stored in the computer memory, a subset of the executed instructions having associated therewith a write/read barrier procedure; wherein each instruction in the subset processes an object reference that references a respective one of the objects stored in the computer memory; the data processor including instruction execution logic that, when executing each instruction that has an associated write/read barrier procedure, (C1) determines whether the State flag of the object reference being processed is set to a first predefined value; (C2) when the State flag value determination is positive, skips execution of the write/read barrier procedure associated with the instruction being executed and proceeds with execution of a next instruction; and (C3) when the State flag value determination is negative, invokes execution of the write/read barrier procedure associated with the instruction being executed.
Claim 16
Dependent Claim
37 words
The computer system of claim 12, wherein the instruction execution logic includes logic for setting the State flag in the object reference being processed to the first predefined value when the State flag value determination is negative.
Claim 17
Dependent Claim
52 words
The computer system of claim 12, wherein the instruction execution logic includes logic for conditionally setting the State flag in the object reference being processed to the first predefined value when the State flag value determination is negative and when predefined criteria with respect to the object reference being processed are satisfied.
Claim 18
Dependent Claim
32 words
The computer system of claim 12, wherein the subset of the executed instructions having associated therewith a write/read barrier procedure are object reference write instructions having associated therewith a write barrier procedure.
Claim 19
Dependent Claim
97 words
The computer system of claim 12, each object stored in the computer memory having an object header with a State flag therein; the write/read barrier procedure including instructions for: (C3A) accessing the object header of the respective object referenced by the object reference being processed and determining whether the State flag in the respective object's header is set to the first predefined value; and (C3B) when the determination by the C3A instructions is positive, exiting the write/read barrier procedure; (C3C) when the determination by the C3A instructions is negative, continuing with execution of the write/read barrier procedure.
Claim 20
Dependent Claim
35 words
The computer system of claim 16, wherein the C3B instructions include instructions for setting the State flag in the object reference being processed to the first predefined value prior to exiting the write/read barrier procedure.
Claim 21
Dependent Claim
38 words
The computer system method of claim 6, wherein the C3C instructions include instructions for setting to the first predefined value the State flag in the object reference being processed and the State flag in the respective object's header.
Claim 22
Dependent Claim
169 words
A computer system that includes a generational garbage collection mechanism, comprising: a memory for storing objects, object references for accessing the objects, and a predefined remembered set data structure, the predefined remembered set data structure storing a list of object references, each object reference including a State flag; and a data processor for executing bytecode instructions, including object reference write bytecode instructions for writing a datum into a specified field of a target object identified by a target object reference; the object reference write bytecode instructions having associated therewith a write barrier procedure; the data processor including instruction execution logic that, when executing each object reference write bytecode instruction: (C1) determines whether the State flag of the target object reference is set to a first predefined value; (C2) when the State flag value determination is positive, skips execution of the write barrier procedure and proceeds with execution of a next bytecode instruction; and (C3) when the State flag value determination is negative, invokes execution of the write barrier procedure.
Claim 23
Dependent Claim
169 words
A computer system that includes a generational garbage collection mechanism, comprising: a memory for storing objects, object references for accessing the objects, and a predefined remembered set data structure, the predefined remembered set data structure storing a list of object references, each object reference including a State flag; and a data processor for executing bytecode instructions, including object reference write bytecode instructions for writing a datum into a specified field of a target object identified by a target object reference; the object reference write bytecode instructions having associated therewith a write barrier procedure; the data processor including instruction execution logic that, when executing each object reference write bytecode instruction: (C1) determines whether the State flag of the target object reference is set to a first predefined value; (C2) when the State flag value determination is positive, skips execution of the write barrier procedure and proceeds with execution of a next bytecode instruction; and (C3) when the State flag value determination is negative, invokes execution of the write barrier procedure.
Claim 24
Dependent Claim
139 words
The computer system of claim 19, each object stored in the computer memory having an object header with a State flag therein; the write barrier procedure including instructions for: (C3A) testing a header State flag in a header of the target object to determine whether the header State flag is set to the first predefined value; (C3B) when the State flag determination by the C3A instructions is negative, adding a reference to the target object to the predefined remembered set data structure, and setting the header State flag and the State flag in the target object reference; (C3C) when the State flag determination by the C3A instructions is positive, setting the State flag in the target object reference and exiting the write barrier procedure without adding a reference to the target object to the predefined remembered set data structure.