#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.