Memory Management Glossary: N¶
- natural alignment
In generational garbage collection nepotism is the tendency for dead objects in old generations to preserve younger dead objects that are referenced by them. In other words, dead parents can cause their children to get promoted.
This happens when an object gets promoted to an old generation and dies there, but does not get reclaimed because the generation it is in does not get considered for garbage collection very often. The old object might refer to objects in younger generations that are also dead; until the old object is reclaimed the younger objects will be preserved by virtue of the reference from the older, assumed alive, object.
This is a form of floating garbage introduced by partitioning the objects into generations.
- next fit
A variant of the first fit allocation mechanism that uses a roving pointer on a circular free block chain. The pointer is advanced along the chain when searching for a fit. Thus each allocation begins looking where the previous one finished. The rationale is to avoid creating an accumulation of small fragments at the head of the free block chain, which would have to be examined on every allocation.
There are several variants, according to the order of blocks on the free block chain. The most common variant is address-ordered next fit.
This has a tendency to spread related objects out in memory, and also gives quite poor locality for the allocator (as the roving pointer rotates around memory, the free blocks touched are those least-recently used).
- new space
- non-moving garbage collector
non-moving memory manager
- nursery generation
- nursery space
Also known as
The size of the nursery space must be chosen carefully. Often it is related to the size of physical memory(1).