Memory Management
Document Revision: 26h1.0
ZXFoundation™'s memory management is organized in four layers:
┌──────────────────────────────────────────┐
│ kmalloc / kfree (general-purpose) │
├──────────────────────────────────────────┤
│ Slab allocator (fixed-size caches) │
├──────────────────────────────────────────┤
│ VMM (virtual address space)│
├──────────────────────────────────────────┤
│ PMM (physical frames) │
├──────────────────────────────────────────┤
│ MMU (hardware DAT tables) │
└──────────────────────────────────────────┘
| Page | Contents |
|---|---|
| PMM | Zone-aware buddy allocator, page descriptors |
| VMM | Virtual address space, VMA red-black tree, vmalloc |
| Slab & Kmalloc | Fixed-size object caches, general allocator |