#include <RexxMemory.hpp>
Public Member Functions | |
void * | operator new (size_t size, size_t minSize) |
void * | operator new (size_t size, void *pool) |
void | operator delete (void *) |
void | operator delete (void *, size_t) |
void | operator delete (void *, void *) |
MemorySegmentPool () | |
MemorySegment * | newSegment (size_t minSize) |
MemorySegment * | newLargeSegment (size_t minSize) |
void | freePool (void) |
MemorySegmentPool * | nextPool () |
void | setNext (MemorySegmentPool *nextPool) |
Static Public Member Functions | |
static MemorySegmentPool * | createPool () |
Private Attributes | |
char | state [8] |
Friends | |
bool | SysAccessPool (MemorySegmentPool **) |
Additional Inherited Members | |
Protected Attributes inherited from MemorySegmentPoolHeader | |
MemorySegmentPool * | next |
MemorySegment * | spareSegment |
char * | nextAlloc |
char * | nextLargeAlloc |
size_t | uncommitted |
size_t | reserved |
Definition at line 140 of file RexxMemory.hpp.
MemorySegmentPool::MemorySegmentPool | ( | ) |
Definition at line 172 of file unix/MemorySupport.cpp.
References MemorySegmentPoolHeader::next.
|
static |
Create a the initial memory pool for the interpreter.
pool | pointer for the returned pool. |
Definition at line 80 of file unix/MemorySupport.cpp.
References Error_System_resources, MemorySegmentPoolOverhead, MEMSIZE, MemorySegmentPoolHeader::nextAlloc, MemorySegmentPoolHeader::nextLargeAlloc, PAGESIZE, reportException(), MemorySegmentPoolHeader::reserved, RXROUNDUP, SegmentSize, MemorySegmentPoolHeader::spareSegment, and MemorySegmentPoolHeader::uncommitted.
Referenced by RexxMemory::initialize().
void MemorySegmentPool::freePool | ( | void | ) |
Definition at line 276 of file unix/MemorySupport.cpp.
Referenced by RexxMemory::shutdown().
MemorySegment * MemorySegmentPool::newLargeSegment | ( | size_t | minSize | ) |
Definition at line 227 of file unix/MemorySupport.cpp.
References memoryObject, RexxMemory::memoryPoolAdded(), newLargeSegment(), MemorySegmentPoolHeader::next, MemorySegmentPoolHeader::nextLargeAlloc, PAGESIZE, RXROUNDUP, MemorySegment::size(), MemorySegmentPoolHeader::spareSegment, and MemorySegmentPoolHeader::uncommitted.
Referenced by newLargeSegment(), and RexxMemory::newLargeSegment().
MemorySegment * MemorySegmentPool::newSegment | ( | size_t | minSize | ) |
Definition at line 182 of file unix/MemorySupport.cpp.
References memoryObject, RexxMemory::memoryPoolAdded(), newSegment(), MemorySegmentPoolHeader::next, MemorySegmentPoolHeader::nextAlloc, PAGESIZE, RXROUNDUP, MemorySegment::size(), MemorySegmentPoolHeader::spareSegment, and MemorySegmentPoolHeader::uncommitted.
Referenced by newSegment(), and RexxMemory::newSegment().
|
inline |
Definition at line 159 of file RexxMemory.hpp.
References MemorySegmentPoolHeader::next.
Referenced by RexxMemory::dump(), and RexxMemory::shutdown().
|
inline |
Definition at line 149 of file RexxMemory.hpp.
|
inline |
Definition at line 150 of file RexxMemory.hpp.
|
inline |
Definition at line 151 of file RexxMemory.hpp.
void * MemorySegmentPool::operator new | ( | size_t | size, |
size_t | minSize | ||
) |
Definition at line 124 of file unix/MemorySupport.cpp.
References Error_System_resources, MemorySegmentPoolOverhead, MEMSIZE, MemorySegmentPoolHeader::nextAlloc, MemorySegmentPoolHeader::nextLargeAlloc, PAGESIZE, reportException(), MemorySegmentPoolHeader::reserved, RXROUNDUP, SegmentSize, MemorySegmentPoolHeader::spareSegment, and MemorySegmentPoolHeader::uncommitted.
|
inline |
Definition at line 148 of file RexxMemory.hpp.
void MemorySegmentPool::setNext | ( | MemorySegmentPool * | nextPool | ) |
Definition at line 285 of file unix/MemorySupport.cpp.
References MemorySegmentPoolHeader::next.
|
friend |
|
private |
Definition at line 163 of file RexxMemory.hpp.