Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

Memory.Heap
Class LargeHeap  view LargeHeap download LargeHeap.java

java.lang.Object
  extended byMemory.Heap.Heap
      extended byMemory.Heap.LargeHeap

public class LargeHeap
extends Heap

Version:
$Id: LargeHeap.java,v 1.4 2003/05/12 10:05:19 joewhaley Exp $

Field Summary
private  int[] countLargeAlloc
           
private  int GC_INITIAL_LARGE_SPACE_PAGES
           
private  int GC_LARGE_SIZES
           
private  ImmortalHeap immortal
           
private  int large_last_allocated
           
private  short[] largeSpaceAlloc
           
private  short[] largeSpaceMark
           
private  int largeSpacePages
           
private  int pageSize
           
private  int usedPages
           
 
Fields inherited from class Memory.Heap.Heap
allHeaps, end, name, start, verbose
 
Constructor Summary
LargeHeap(ImmortalHeap imm)
          Initialize for boot image - called from init of various collectors
 
Method Summary
protected  Memory.HeapAddress allocateZeroedMemory(int size)
          Allocate size bytes of zeroed memory.
private  void countObjects()
           
 void endCollect()
           
 int freeSpace()
           
 void init()
           
 boolean isLive(Memory.HeapAddress ref)
           
 boolean mark(Memory.HeapAddress ref)
           
protected  void postAllocationProcessing(java.lang.Object newObj)
          Hook to allow heap to perform post-allocation processing of the object.
 void startCollect()
           
 int totalMemory()
          Get total amount of memory used by large space.
 
Methods inherited from class Memory.Heap.Heap
addrInAnyHeap, addrInHeap, allocateArray, allocateArray, allocateObject, allocateObject, boot, clobber, clobber, getSize, paranoidScan, refInAnyHeap, refInHeap, setRegion, show, show, showAllHeaps, showRange, touchPages, zero
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

immortal

private ImmortalHeap immortal

pageSize

private final int pageSize
See Also:
Constant Field Values

GC_LARGE_SIZES

private final int GC_LARGE_SIZES
See Also:
Constant Field Values

GC_INITIAL_LARGE_SPACE_PAGES

private final int GC_INITIAL_LARGE_SPACE_PAGES
See Also:
Constant Field Values

usedPages

private int usedPages

largeSpacePages

private int largeSpacePages

large_last_allocated

private int large_last_allocated

largeSpaceAlloc

private short[] largeSpaceAlloc

largeSpaceMark

private short[] largeSpaceMark

countLargeAlloc

private int[] countLargeAlloc
Constructor Detail

LargeHeap

public LargeHeap(ImmortalHeap imm)
Initialize for boot image - called from init of various collectors

Method Detail

init

public void init()

totalMemory

public int totalMemory()
Get total amount of memory used by large space.


allocateZeroedMemory

protected Memory.HeapAddress allocateZeroedMemory(int size)
Allocate size bytes of zeroed memory. Size is a multiple of wordsize, and the returned memory must be word aligned

Specified by:
allocateZeroedMemory in class Heap

postAllocationProcessing

protected void postAllocationProcessing(java.lang.Object newObj)
Hook to allow heap to perform post-allocation processing of the object. For example, setting the GC state bits in the object header.

Specified by:
postAllocationProcessing in class Heap

startCollect

public void startCollect()

endCollect

public void endCollect()

isLive

public boolean isLive(Memory.HeapAddress ref)

mark

public boolean mark(Memory.HeapAddress ref)

countObjects

private void countObjects()

freeSpace

public int freeSpace()