Relates :
|
|
Relates :
|
|
Relates :
|
|
Relates :
|
|
Relates :
|
|
Relates :
|
Over time the GC code has spread out across a number of directories, and currently looks like this: - There are three "top-level" directories which contain GC-related code: src/share/vm/gc_interface/ src/share/vm/gc_implementation/ src/share/vm/memory/ - Our collectors are roughly spread out like this: src/share/vm/gc_implementation/parallelScavenge/ (ParallelGC) src/share/vm/gc_implementation/g1/ (G1) src/share/vm/gc_implementation/concurrentMarkSweep/ (CMS) src/share/vm/gc_implementation/parNew/ (ParNewGC) src/share/vm/gc_implementation/shared/ (MarkSweep) src/share/vm/memory/ (DefNew) - We have common/shared code in the following places: src/share/vm/gc_interface/ (CollectedHeap, etc) src/share/vm/gc_implementation/shared/ (counters, utilities, etc) src/share/vm/memory/ (BarrierSet, GenCollectedHeap, etc) The plan is for the new structure to look like this: - A single "top-level" directory for GC code: src/share/vm/gc/ - One sub-directory per GC: src/share/vm/gc/cms/ src/share/vm/gc/g1/ src/share/vm/gc/parallel/ src/share/vm/gc/serial/ - A single directory for common/shared GC code: src/share/gc/shared/