Chapter 6
Chapter 6 adds Toyix's first kernel heap and shared kernel allocation interface.
Highlights:
- Moves public kernel headers under include/kernel.
- Adds shared freestanding string/memory declarations.
- Adds an early kernel heap with kmalloc, kcalloc, and kfree.
- Adds heap block splitting, coalescing, statistics, and boot-time sanity checks.
- Adds PMM helpers for allocations below the identity-mapped limit.
- Adds heap coverage to the normal QEMU smoke test.
- Tracks CFLAGS_EXTRA changes so test-only builds do not poison later normal builds.