src/share/vm/memory/space.hpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File 7089790_full Sdiff src/share/vm/memory

src/share/vm/memory/space.hpp

Print this page
rev 2694 : imported patch headers_only


  27 
  28 #include "memory/allocation.hpp"
  29 #include "memory/blockOffsetTable.hpp"
  30 #include "memory/cardTableModRefBS.hpp"
  31 #include "memory/iterator.hpp"
  32 #include "memory/memRegion.hpp"
  33 #include "memory/watermark.hpp"
  34 #include "oops/markOop.hpp"
  35 #include "runtime/mutexLocker.hpp"
  36 #include "runtime/prefetch.hpp"
  37 #include "utilities/workgroup.hpp"
  38 #ifdef TARGET_OS_FAMILY_linux
  39 # include "os_linux.inline.hpp"
  40 #endif
  41 #ifdef TARGET_OS_FAMILY_solaris
  42 # include "os_solaris.inline.hpp"
  43 #endif
  44 #ifdef TARGET_OS_FAMILY_windows
  45 # include "os_windows.inline.hpp"
  46 #endif



  47 
  48 // A space is an abstraction for the "storage units" backing
  49 // up the generation abstraction. It includes specific
  50 // implementations for keeping track of free and used space,
  51 // for iterating over objects and free blocks, etc.
  52 
  53 // Here's the Space hierarchy:
  54 //
  55 // - Space               -- an asbtract base class describing a heap area
  56 //   - CompactibleSpace  -- a space supporting compaction
  57 //     - CompactibleFreeListSpace -- (used for CMS generation)
  58 //     - ContiguousSpace -- a compactible space in which all free space
  59 //                          is contiguous
  60 //       - EdenSpace     -- contiguous space used as nursery
  61 //         - ConcEdenSpace -- contiguous space with a 'soft end safe' allocation
  62 //       - OffsetTableContigSpace -- contiguous space with a block offset array
  63 //                          that allows "fast" block_start calls
  64 //         - TenuredSpace -- (used for TenuredGeneration)
  65 //         - ContigPermSpace -- an offset table contiguous space for perm gen
  66 




  27 
  28 #include "memory/allocation.hpp"
  29 #include "memory/blockOffsetTable.hpp"
  30 #include "memory/cardTableModRefBS.hpp"
  31 #include "memory/iterator.hpp"
  32 #include "memory/memRegion.hpp"
  33 #include "memory/watermark.hpp"
  34 #include "oops/markOop.hpp"
  35 #include "runtime/mutexLocker.hpp"
  36 #include "runtime/prefetch.hpp"
  37 #include "utilities/workgroup.hpp"
  38 #ifdef TARGET_OS_FAMILY_linux
  39 # include "os_linux.inline.hpp"
  40 #endif
  41 #ifdef TARGET_OS_FAMILY_solaris
  42 # include "os_solaris.inline.hpp"
  43 #endif
  44 #ifdef TARGET_OS_FAMILY_windows
  45 # include "os_windows.inline.hpp"
  46 #endif
  47 #ifdef TARGET_OS_FAMILY_bsd
  48 # include "os_bsd.inline.hpp"
  49 #endif
  50 
  51 // A space is an abstraction for the "storage units" backing
  52 // up the generation abstraction. It includes specific
  53 // implementations for keeping track of free and used space,
  54 // for iterating over objects and free blocks, etc.
  55 
  56 // Here's the Space hierarchy:
  57 //
  58 // - Space               -- an asbtract base class describing a heap area
  59 //   - CompactibleSpace  -- a space supporting compaction
  60 //     - CompactibleFreeListSpace -- (used for CMS generation)
  61 //     - ContiguousSpace -- a compactible space in which all free space
  62 //                          is contiguous
  63 //       - EdenSpace     -- contiguous space used as nursery
  64 //         - ConcEdenSpace -- contiguous space with a 'soft end safe' allocation
  65 //       - OffsetTableContigSpace -- contiguous space with a block offset array
  66 //                          that allows "fast" block_start calls
  67 //         - TenuredSpace -- (used for TenuredGeneration)
  68 //         - ContigPermSpace -- an offset table contiguous space for perm gen
  69 


src/share/vm/memory/space.hpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File