Back to Projects
Systems Programming

Arena Memory Allocator Implementations

Implementation and analysis of multiple arena-based memory allocation strategies in C. This systems programming project explores different allocation approaches optimized for various performance characteristics and memory usage patterns.

Tech Stack

4 technologies used

COperating SystemsMemory ManagementSystems Programming

Key Features

  • Free List allocator with first-fit and best-fit strategies
  • Monotonic (bump) allocator for sequential allocation patterns
  • Pool allocator for fixed-size object allocation
  • Multipool allocator combining multiple pool sizes
  • Buddy allocator for power-of-two sized allocations
  • Empirical benchmarks comparing throughput and fragmentation

Challenges Solved

  • Minimizing fragmentation while maintaining allocation speed
  • Designing allocators that work well for specific usage patterns
  • Balancing memory overhead of metadata vs allocation efficiency

Outcomes & Impact

  • Deep understanding of memory management trade-offs
  • Performance data showing optimal allocator selection criteria
  • Clean, well-documented implementations for educational use