System Research: Memory Layout

Visualizing a simple arena allocator.

typedef struct Chunk { size_t size; struct Chunk* next; } Chunk;
typedef struct Arena { void* base; size_t cap; Chunk* free; } Arena;

void* arena_alloc(Arena* a, size_t n) {
  // very naive bump (for illustration only)
  // ...
  return 0;
}