#include "config.h"
#include <stdint.h>
#include <unistd.h>
#include <fcntl.h>
#include <sys/mman.h>
#include "system-alloc.h"
#include "internal_spinlock.h"
#include "internal_logging.h"
#include "base/commandlineflags.h"
構成 | |
union | MemoryAligner |
関数 | |
DEFINE_int32 (malloc_devmem_start, 0,"Physical memory starting location in MB for /dev/mem allocation."" Setting this to 0 disables /dev/mem allocation") | |
DEFINE_int32 (malloc_devmem_limit, 0,"Physical memory limit location in MB for /dev/mem allocation."" Setting this to 0 means no limit.") | |
static void * | TrySbrk (size_t size, size_t alignment) |
static void * | TryMmap (size_t size, size_t alignment) |
static void * | TryDevMem (size_t size, size_t alignment) |
void * | TCMalloc_SystemAlloc (size_t size, size_t alignment) |
変数 | |
static SpinLock | spinlock = SPINLOCK_INITIALIZER |
static size_t | pagesize = 0 |
static bool | use_devmem = true |
static bool | use_sbrk = true |
static bool | use_mmap = true |
static bool | devmem_failure = false |
static bool | sbrk_failure = false |
static bool | mmap_failure = false |
DEFINE_int32 | ( | malloc_devmem_limit | , | |
0 | , | |||
"Physical memory limit location in MB for /dev/mem allocation."" Setting this to 0 means no limit." | ||||
) |
DEFINE_int32 | ( | malloc_devmem_start | , | |
0 | , | |||
"Physical memory starting location in MB for /dev/mem allocation."" Setting this to 0 disables /dev/mem allocation" | ||||
) |
void* TCMalloc_SystemAlloc | ( | size_t | size, | |
size_t | alignment | |||
) |
tcmalloc-0.8/system-alloc.cc の 250 行で定義されています。
参照先 devmem_failure, TCMallocDebug::kVerbose, TCMallocDebug::level, MESSAGE, mmap_failure, PRIuS, sbrk_failure, TryDevMem(), TryMmap(), TrySbrk(), use_devmem, use_mmap, と use_sbrk.
static void* TryDevMem | ( | size_t | size, | |
size_t | alignment | |||
) | [static] |
static void* TryMmap | ( | size_t | size, | |
size_t | alignment | |||
) | [static] |
static void* TrySbrk | ( | size_t | size, | |
size_t | alignment | |||
) | [static] |
bool devmem_failure = false [static] |
bool mmap_failure = false [static] |
size_t pagesize = 0 [static] |
bool sbrk_failure = false [static] |
tcmalloc-0.8/system-alloc.cc の 56 行で定義されています。
bool use_devmem = true [static] |
bool use_mmap = true [static] |
bool use_sbrk = true [static] |