D128 - The guest heap is the host allocator

Status: decided Date: 2026-09-26

malloc, memalign, operator new and their relatives are served by the host allocator through one allocate(size, align) path. A sixteen-byte header records the offset back to the allocation, which is also its alignment, and free refuses a header it did not write.

Why: the address space is identity-mapped, so a host allocation is a guest allocation at the same address. One path keeps the layout dealloc needs from allocation to release, and a program mixing new and malloc sees one heap.

Rejected: