alloc_buddy_simple 0.1.2

Simple, drop-in replacement allocator for Rust running on bare metal (no_std)

Crate alloc_buddy_simple [] [src]

A simple heap based on a buddy allocator. For the theory of buddy allocators, see https://en.wikipedia.org/wiki/Buddy_memory_allocation

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.

Structs

FreeBlock

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.

Heap

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.