Garbage Collector Glossary
Short background notes on the general GC concepts the Garbage Collector and Precise Stack Scanning articles build on. Each page explains the concept on its own, then closes with one line on how OrionGC applies it.
| Concept | Summary |
|---|---|
| Stop-the-world | All threads pause for the full duration of a collection |
| Mark-and-sweep | Mark what is reachable, sweep the rest in place |
| Moving vs. non-moving | Whether live objects can ever be relocated |
| Generations | Age-segregated heaps, and what a single generation avoids |
| Bump allocation | Allocation by advancing a pointer through fresh space |
| TLAB | Per-thread buffers that make the allocation fast path synchronization-free |
| GC roots | Where reachability starts |
| Precise vs. conservative scanning | Knowing which stack words are references, or guessing |
| Safepoint | Code locations where the compiler's tables describe the GC state exactly |
| Funclet | Exception handlers compiled as small separate functions with frames of their own |
| Finalization and resurrection | Cleanup code before reclaim, and dead objects becoming reachable again |
| Runtime object header | The bookkeeping word just before every object (hash code, thin lock) |
| ABA problem | Why lock-free code needs version tags when values can be recycled |