Method for combining card marking with remembered sets for old area of a memory heap
First Claim
1. A computer implemented method for garbage collection of memory objects in a memory, the method comprising:
- (a) partitioning said heap or portion thereof into at least one old and at least one young area;
(b) associating said at least one old area with cars that form part of said at least one old area, card markings and remembered sets data structure;
said card markings including, for each card, a card time stamp indicative of a time said card was updated;
each of said cars including, a respective car time stamp indicative of a time the remembered set of said car was updated;
(c) identifying all cards that were updated later than the remembered set of a selected one of said cars and in respect of each card thus identified;
(i) identifying change in pointers that refer from said card to memory object in said selected car and in response to identified change in pointers; and
(ii) updating the remembered set of said car with the identified pointers; and
(d) updating the car time stamp associated with said selected car.
1 Assignment
0 Petitions
Accused Products
Abstract
A system for garbage collection of memory objects in a memory heap. The system includes memory heap that is partitioned into respective old and young areas. The old area is partitioned into cars and is further associated with card markings and remembered sets data structures. The card markings include for each card, a card time stamp that represents the time that the card was updated. The car includes, for each car, a car time entry stamp that represents the time the remembered set of the car was updated. The system further includes a processor communicating with the memory, and being capable of identifying all cards that were updated later than the remembered set of a selected car. In response to the event, it performs identifying change in pointers that refer from the card to a memory object in the selected car and in response to identified change in pointers, updating the remembered set of the car with the identified pointers. The process is further capable of updating the car time stamp of the selected car.
-
Citations
19 Claims
-
1. A computer implemented method for garbage collection of memory objects in a memory, the method comprising:
-
(a) partitioning said heap or portion thereof into at least one old and at least one young area; (b) associating said at least one old area with cars that form part of said at least one old area, card markings and remembered sets data structure;
said card markings including, for each card, a card time stamp indicative of a time said card was updated;
each of said cars including, a respective car time stamp indicative of a time the remembered set of said car was updated;(c) identifying all cards that were updated later than the remembered set of a selected one of said cars and in respect of each card thus identified; (i) identifying change in pointers that refer from said card to memory object in said selected car and in response to identified change in pointers; and (ii) updating the remembered set of said car with the identified pointers; and (d) updating the car time stamp associated with said selected car. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 18)
-
-
9. A system for garbage collection of memory objects in a memory heap;
- the system comprising memory heap or portion thereof that is partitioned into at least one old and at least one young areas;
said at least one old area is associated at least cars that form part of said at least one old area, card markings and remembered sets data structure;
said card markings includes, for each card, a card time stamp indicative of the time said card was updated;
said car includes, for each car, a car time entry stamp indicative of the time the remembered set of said car was updated;
the system further comprising;processor communicating with said memory, and being capable of; (i) identifying all cards that were updated later than the remembered set of a selected car and in response thereto perform;
identifying change in pointers that refer from said card to memory object in said selected car and in response to identified change in pointers, updating the remembered set of said car with the identified pointers; and(ii) updating the car time stamp associated with said selected car. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 19)
- the system comprising memory heap or portion thereof that is partitioned into at least one old and at least one young areas;
-
17. A storage medium associated with a processor and accessible to garbage collection application running on said processor, for garbage collection of memory objects, the storage medium includes:
memory heap or portion thereof that is partitioned into at least one old and at least one young areas;
said at least one old area is associated at least cars that form part of said at least one old area, card markings and remembered sets data structure;
said card markings includes, for each card, a card time stamp indicative of the time said card was updated;
said car includes, for each car, a car time stamp indicative of the time the remembered set of said car was updated.
Specification