Simple no_std memory allocator, designed for polymorphOS https://crates.io/crates/polymorph-allocator
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Alice Jenkinson 327932dae8 [ci skip] Add docs.rs badge to README 2 weeks ago
src Add iterator over Allocator regions 2 weeks ago
.gitignore Initial commit 3 weeks ago
Cargo.toml Bump version to v0.1.0 2 weeks ago
LICENSE Initial commit 3 weeks ago
README.md [ci skip] Add docs.rs badge to README 2 weeks ago
appveyor.yml Add AppVeyor config 3 weeks ago

README.md

polymorph-allocator

Build status Documentation on docs.rs

A simple no_std memory allocator, originally designed for polymorphOS.

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

MIT, see LICENSE