P9 [[c++game development primer]] has a short implementation without using heap. The memory pool comes from a large array of chars. The allocator keeps track of allocated chunks but doesn’t reuse reclaimed chunks.
It showcases the header associated with each allocated chunk. This feature is also part of a real heap allocator.
reinterpret_cast is used repeatedly.