Anklang 0.3.0-460-gc4ef46ba
ASE — Anklang Sound Engine (C++)
« « « Anklang Documentation |
Interface to the OS huge page allocator. More...
#include "memory.hh"
Public Types | |
using | HugePageP = std::shared_ptr< HugePage > |
Public Member Functions | |
size_t | alignment () const |
Alignment of the memory area. | |
size_t | size () const |
Size in bytes of the memroy area. | |
char * | mem () const |
Allocated memroy area. | |
Static Public Member Functions | |
static HugePageP | allocate (size_t minimum_alignment, size_t bytelength) |
Try to allocate a HugePage >= bytelength with minimum_alignment , usual sizes are 2MB. | |
Protected Member Functions | |
HugePage (void *m, size_t s) | |
Protected Attributes | |
void *const | start_ |
const size_t | size_ |
|
explicitprotected |
|
protectedvirtual |
size_t Ase::FastMemory::HugePage::alignment | ( | ) | const |
|
static |
Try to allocate a HugePage >= bytelength
with minimum_alignment
, usual sizes are 2MB.
Definition at line 52 of file memory.cc.
References std::aligned_alloc(), assert_return, errno(), std::max(), mlock(), mmap(), munmap(), size_t, strerror(), sysconf(), and uintptr_t.
char * Ase::FastMemory::HugePage::mem | ( | ) | const |
size_t Ase::FastMemory::HugePage::size | ( | ) | const |