Crate alloc_buddy_simple [] [src]

A simple heap based on a buddy allocator. For the theory of buddy allocators, see

This can either be used as a standalone library, or as a replacement for Rust's system allocator. It runs on top of libcore, so it can be used on bare metal or in kernel space.

Note that our Heap API is unstable.



A free block in our heap. This is actually a header that we store at the start of the block. We don't store any size information in the header, because we a separate free block list for each block size.


The interface to a heap. This data structure is stored outside the heap somewhere, because every single byte of our heap is potentially available for allocation.