A method of garbage collection and data processing apparatus embodying the same. Within a heap memory, data objects are accessed via respective pointers carried by memory stacks; the memory is periodically swept to mark, for each object, a count of the number of extant pointers thereto from any source and, on detection that an object's count has reached zero, deleting that object. To permit concurrency of mark and sweep operations, a pair of reference count fields are maintained for each object: one holds an ongoing pointer count for the present mark operation and the other holds the value for the preceding one. At the conclusion of each mark operation, the mapping of counts into fields is reversed. An objects count is taken as zero, and the object deleted, when both counts are zero.

Une méthode de collection d'ordures et d'appareil informatique incarnant la même chose. Dans une mémoire de tas, des objets de données sont consultés par l'intermédiaire des indicateurs respectifs portés par des piles de mémoire ; la mémoire est périodiquement balayée pour marquer, pour chaque objet, un compte du nombre d'indicateurs existants là-dessus de n'importe quelle source et, sur la détection que le compte d'un objet a atteint zéro, supprimant cet objet. Pour permettre la simultanéité de la marque et balayer des opérations, une paire de zones de comptage de référence sont maintenues pour chaque objet : on tient un compte continu d'indicateur pour l'opération actuelle de marque et l'autre tient la valeur pour précédante. À la conclusion de chaque opération de marque, tracer des comptes dans des champs est renversé. Un compte d'objets est pris en tant que zéro, et l'objet est supprimé, quand les deux comptes sont zéro.

 
Web www.patentalert.com

< (none)

< System and method for transmitting voice messages through the internet

> Read/write data sharing of DASD data, including byte file system data, in a cluster of multiple data processing systems

> (none)

~ 00025