← Back to Labs
Buddy Allocator Visualizer
Allocate contiguous page blocks, watch larger buddies split, then free them and see coalescing rebuild larger orders.
p0
p1
p2
p3
p4
p5
p6
p7
p8
p9
p10
p11
p12
p13
p14
p15
start=0 pages=16 order=4 free buddy block
16/16 freeallocator state
Start with one free order-4 block of 16 pages. Allocate requests to watch the buddy allocator split higher orders into smaller ones. Think of each free block as a chunk the kernel can either split into two smaller buddies or merge back together when both halves are free.
largest free order
4
block count
1
history depth
0
1/2/3/4 allocate different orders · F free last · R reset
Allocate blocks until fragmentation prevents a larger contiguous request