MemoryMap(
    table_addr: 0x1000,
    regions: [
        // 0000-1000 = reserved
        Region(
            base: 0x0,
            size: 0x1000,
            region_type: Reserved
        ),
        // 1000-4000 = bootloader
        Region(
            base: 0x1000,
            size: 0x3000,
            region_type: Bootloader
        ),
        // 5000-0FFFFFFF = MMIO
        Region(
            base: 0x5000,
            size: 0x0FFF_FFFF,
            region_type: MMIO
        ),
        // 10000000-BFFFFFFF = userspace
        Region(
            base: 0x1000_0000,
            size: 0xBFFF_FFFF,
            region_type: Usable
        ),
        // C0000000-C0FFFFFF = kernel page tables
        Region(
            base: 0xC000_0000,
            size: 0x100_0000,
            region_type: KernelTables
        ),
        // C1000000-FFFFFFFF = kernel
        Region(
            base: 0xC100_0000,
            size: 0x3EFF_FFFF,
            region_type: Kernel
        )
    ]
)
