polymorph-allocator 1.1.0

A simple no_std memory allocator
Documentation

polymorph-allocator

A simple no_std memory allocator.

This crate takes heavy inspiration from awooOS/dmm, a simple C memory allocator for bare-metal uses.

This crate is very early in development, and as such may be unstable or randomly panic!(). As of v0.1.0 it works well enough for polymorphOS to boot using this crate as it's allocator, though, so YMMV.

Usage

use polymorph_allocator::LockedAllocator;

#[global_allocator]
pub static ALLOCATOR: LockedAllocator = LockedAllocator::empty();

fn main() {
    // For a 32MB heap starting at 1MB in RAM:
    ALLOCATOR.lock().add_region(0x100000, 0x2000000);
}

License

polymorph-allocator is licensed under the MIT License, the same license as the rest of polymorphOS.

You can find this license in the LICENSE file in the top level of this repository.