Methods and apparatus for enabling an efficient generational scavenging
garbage collection to be performed on a managed memory area are disclosed.
According to one aspect of the present invention, a method for reclaiming
memory space uses a managed memory area that includes a first area and a
second area. The first area is arranged to store recently allocated
objects, while the second area being arranged to store older objects. The
method includes determining when a first section of the first area in
which new objects are to be allocated is substantially filled. When it is
determined that the first section is substantially filled, a garbage
collection is performed on a second section of the first. After the
garbage collection, the second section is set to support new object
allocation such that new objects are allocated in the second section,
while the first section is reset such that it is no longer arranged to
support new object allocation. In one embodiment, performing the garbage
collection on the second section includes copying a live object from the
second section into the second area.
De methodes en de apparaten om dat een efficiënte generational het reinigen huisvuilinzameling toe te laten worden wordt uitgevoerd op een beheerd geheugengebied onthuld. Volgens één aspect van de onderhavige uitvinding, een methode om geheugen ruimtegebruik terug te winnen een beheerd geheugengebied dat een eerste gebied en een tweede gebied omvat. Het eerste gebied wordt geschikt om onlangs toegewezen voorwerpen op te slaan, terwijl het tweede gebied dat wordt geschikt om oudere voorwerpen op te slaan. De methode omvat het bepalen wanneer een eerste sectie van het eerste gebied waarop de nieuwe voorwerpen moeten worden toegewezen wezenlijk wordt gevuld. Wanneer men bepaalt dat de eerste sectie wezenlijk wordt gevuld, wordt een huisvuilinzameling uitgevoerd op een tweede sectie van de eerste. Na de huisvuilinzameling, wordt de tweede sectie geplaatst aan steun nieuwe objecten toewijzing dusdanig dat de nieuwe voorwerpen in de tweede sectie worden toegewezen, terwijl de eerste sectie wordt teruggesteld dusdanig dat het niet meer wordt geschikt om nieuwe objecten toewijzing te steunen. In één belichaming, die omvat de huisvuilinzameling op de tweede sectie het kopiëren van een levend voorwerp van de tweede sectie in het tweede gebied presteert.