malloc mmap, MAP_POPULATE, .
#include <sys/mman.h>
void *block = mmap(NULL, length, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS|MAP_POPULATE,
-1, 0);
munmap(block, length);
, , mmap :
int fd = open('world.bin', 'r+');
void *block = mmap(NULL, <filesize>, PROT_READ|PROT_WRITE,
MAP_SHARED, fd, 0);
world.bin , block; - , , linux , .
, , :
, _BSD_SOURCE _SVID_SOURCE. ( _GNU_SOURCE , , Linux.) : MAP_32BIT, MAP_ANONYMOUS ( MAP_ANON), MAP_DENYWRITE, MAP_EXECUTABLE, MAP_FILE, MAP_GROWSDOWN, MAP_HUGETLB, MAP_LOCKED, MAP_NONBLOCK, MAP_NORESERVE, MAP_POPULATE MAP_STACK.