Skip to content

Chapter 6

Choose a tag to compare

@Monotoba Monotoba released this 22 Jun 23:20
· 2 commits to main since this release

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.