Skip to content

Latest commit

 

History

6 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Arena Allocator

An educational C project demonstrating how an arena allocator works using operating system-level memory reservation and commitment patterns.

Overview

This project provides a practical implementation of an arena allocator, also known as a linear or bump allocator. It's designed to illustrate memory management concepts and serves as a learning resource for understanding efficient memory allocation strategies.

Features

  • Linear/arena-based memory allocation model
  • OS-level memory reservation and commitment
  • Minimal dependencies (pure C)
  • Educational and well-structured codebase

Building

Using Make

make
./build/arena-allocator

Using CMake

cmake -S . -B build
cmake --build build -- -j
./build/arena-allocator

Project Structure

.
├── include/
│   └── arena.h          # Public API
├── src/
│   ├── arena.c          # Arena implementation
│   └── main.c           # Entry point
├── CMakeLists.txt       # CMake configuration
├── Makefile             # Make configuration
└── README.md            # This file

Usage

Refer to include/arena.h for the public API and src/main.c for usage examples.

License

Educational project. Use freely for learning purposes.

About

an educational arena allocator implementation in C, built from scratch to explore memory management, allocator design, and low-level programming concepts.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages