Du kannst nicht mehr als 25 Themen auswählen Themen müssen entweder mit einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.
 
 

27 Zeilen
570 B

#include <errno.h>
#include <sys/mman.h>
// NOTE(Patrick): The memory here is by default allocated uncommitted.
// This means that we don't lock down 1GB of memory up front, but get
// allocated pages by the kernel as needed.
int linux_allocate_arena_memory(
Memory_Arena *arena,
size_t arena_size)
{
void *arena_memory = mmap(
NULL, arena_size,
PROT_READ|PROT_WRITE|PROT_EXEC, MAP_SHARED|MAP_ANONYMOUS, -1, 0);
if(arena_memory == (void*)-1) {
//perror("mmap");
return errno;
}
arena->memory = arena_memory;
arena->size = arena_size;
return 0;
}