Module kalloc::buddy[][src]

Expand description

Buddy system allocator

Buddy system is a memory allocation algorithm, designed to reduce external fragmentation but can still achieve high performance. It has been widely used in modern operating systems such as Linux for dynamic allocation and deallocation of memory chunks.

Complexity

Allocation and deallocation are both guaranteed to finish within O(log n), where n is the size of memory handled by this buddy system.

Structs

Allocator

A thread-safe allocator with multiple buddy systems.

BuddySystem

Buddy System Allocator Structure.

MultiBuddySystem

Allocator that holds multiple buddy systems.