Palloc
Portable linked-list allocator for embedded / baremetal systems.
Using the crate
Include this in the [dependencies]
section of Cargo.toml
spin = "0.1.0"
This crate uses unstable features of Rust, so it requires the nightly
update channel. Here's how you can
update your Rust toolchain just for the project where you intend to use this:
rustup override set nightly
Crate features
spin
(default): provides a GlobalAllocator implementation using a spin-lock provided by the spin crate.allocator_api
(default): enables implements the Allocator trait on all global allocators.
Example
use NonNull;
use ;
// the allocator is initialized using a const empty function, but it is
// not ready yet, we must initialize it first in main.
static mut ALLOCATOR: SpinPalloc = empty;
Documentation
Everything you need to know in order to use this crate is already written in the rustdocs. Click on the badge under this readme's title or click here to read the full documentation.