A threshold size of "interesting" free space regions (those areas that exceed a minimum size and are therefore worth recovering) is employed during garbage collection when detecting and reclaiming non-allocated memory space. For mark/sweep garbage collection, the threshold is based upon a number of consecutive zero mark bits in a mark bit array. The mark bit array, in which the liveness of each allocated data object is indicated by a logical "1" at the first memory segment of a live object and a logical "0" at the first memory segment for dead object, with the remaining memory segments being marked with a logical "0", is produced by the mark phase of a mark/sweep garbage collector. During the sweep phase, however, the mark bit array is processed instead of each object in memory. Interesting free space regions, which meet or exceed the threshold size and are targeted for de-allocation and coalescing, are identified from runs of consecutive zeros, with verification that the run corresponds to unused memory. This allows sequences of bits to be inspected concurrently at a high rate, eliminating the need to inspect objects individually and skipping small free space regions intermingled with live objects. By eliminating the need to examine each object for "liveness," groups of objects, represented by mark bits, are treated as aggregates which may be processed more quickly.

Un tamaño del umbral de las regiones libres "interesantes" del espacio (esas áreas que exceden un tamaño mínimo y están por lo tanto digno de la recuperación) se emplea durante la colección de la basura al detectar y reclamando la memoria no-asignada. Para la colección de la basura de mark/sweep, el umbral se basa sobre un número de pedacitos cero consecutivos de la marca en un arsenal de pedacito de la marca. El arsenal de pedacito de la marca, en el cual el liveness de cada objeto asignado de los datos es indicado por un "1 lógico" en el primer segmento de la memoria de un objeto vivo y un "0 lógico" en el primer segmento de la memoria para el objeto muerto, con los segmentos restantes de la memoria que son marcados con un "0 lógico", se produce por la fase de la marca de un colector de la basura de mark/sweep. Durante la fase del barrido, sin embargo, el arsenal de pedacito de la marca se procesa en vez de cada objeto en memoria. Las regiones libres interesantes del espacio, que resuelven o exceden el tamaño del umbral y se apuntan para la desasignación y unirse, se identifican de funcionamientos de ceros consecutivos, con la verificación que el funcionamiento corresponde a la memoria inusitada. Esto permite que las secuencias de pedacitos sean examinadas concurrentemente en una alta tarifa, eliminando la necesidad de examinar objetos individualmente y saltando las regiones libres pequeñas del espacio mezcladas con los objetos vivos. Eliminando la necesidad de examinar cada objeto para el "liveness," los grupos de objetos, representados por los pedacitos de la marca, son tratados como agregados que se puedan procesar más rápidamente.

 
Web www.patentalert.com

< (none)

< Automated development system for developing applications that interface with both distributed component object model (DCOM) and enterprise server environments

> Replicated resource management system for managing resources in a distributed application and maintaining a relativistic view of state

> (none)

~ 00021