Expand description
§buddy-slab-allocator
A #![no_std] memory allocator featuring:
- Buddy page allocator — page-metadata-based with intrusive free lists
- Slab allocator — bitmap-based with lock-free cross-CPU freeing (Linux SLUB inspired)
- Global allocator — composes buddy + per-CPU slab, implements
core::alloc::GlobalAlloc
Both buddy and slab allocators can be used standalone.
Re-exports§
pub use buddy::BuddyAllocator;pub use buddy::ManagedSection;pub use slab::PerCpuSlab;pub use slab::SizeClass;pub use slab::SlabAllocResult;pub use slab::SlabAllocator;pub use slab::SlabDeallocResult;pub use slab::SlabPoolDeallocResult;pub use slab::SlabPoolTrait;pub use slab::SlabTrait;pub use slab::StaticSlabPool;pub use global::GlobalAllocator;
Modules§
- buddy
- Buddy page allocator — page-metadata-based with intrusive free lists.
- eii
- External interface items supplied by the platform / allocator integrator.
- global
- slab
- Slab allocator — bitmap-based with lock-free cross-CPU freeing.
Enums§
- Alloc
Error - The error type used for allocation operations.
Type Aliases§
- Alloc
Result - A
Resultalias withAllocErroras the error type.