[][src]Crate slabmalloc

A slab allocator implementation for small objects (< architecture page size).

The organization is as follows (top-down):

  • A ZoneAllocator manages many SCAllocator and can satisfy requests for different allocation sizes.
  • A SCAllocator allocates objects of exactly one size. It holds its data in a PageList.
  • A trailt AllocablePage that defines the method a page from which we allocate needs.
  • A ObjectPage that is 4 KiB and can contain allocated objects and associated meta-data.
  • A LargeObjectPage that is 2 MiB and can contain allocated objects and associated meta-data.

Structs

LargeObjectPage

Holds allocated data within a 2 MiB page.

ObjectPage

Holds allocated data within a 4 KiB page.

Rawlink

Rawlink is a type like Option but for holding a raw pointer

SCAllocator

A slab allocator allocates elements of a fixed size.

SafeZoneAllocator
ZoneAllocator

A zone allocator.

Enums

AllocationError

Traits

AllocablePage