rumpk/boot
Markus Maiwald 1b4facd86b Phase 37: The Glass Cage - Memory Isolation Complete
VICTORY: All page faults (Code 12, 13, 15) eliminated. NipBox runs in isolated userspace.

Root Cause Diagnosed:
- Kernel BSS (0x84D5B030) was overwritten by NipBox loading at 0x84000000
- current_fiber corruption caused cascading failures

Strategic Fixes:
1. Relocated NipBox to 0x86000000 (eliminating BSS collision)
2. Expanded DRAM to 256MB, User region to 64MB (accommodating NipBox BSS)
3. Restored Kernel GP register in trap handler (fixing global access)
4. Conditionally excluded ion/memory from userspace builds (removing 2MB pool)
5. Enabled release build optimizations (reducing BSS bloat)

Results:
- Kernel globals: SAFE
- User memory: ISOLATED (Sv39 active)
- Syscalls: OPERATIONAL
- Scheduler: STABLE
- NipBox: ALIVE (waiting for stdin)

Files Modified:
- core/rumpk/apps/linker_user.ld: User region 0x86000000-0x89FFFFFF (64MB)
- core/rumpk/hal/mm.zig: DRAM 256MB, User map 32-256MB
- core/rumpk/hal/entry_riscv.zig: GP reload in trap handler
- core/rumpk/core/ion.nim: Conditional memory export
- core/rumpk/libs/membrane/ion_client.nim: Local type declarations
- core/rumpk/libs/membrane/net_glue.nim: Removed ion import
- core/rumpk/libs/membrane/compositor.nim: Stubbed unused functions
- src/nexus/builder/nipbox.nim: Release build flags

Next: Fix stdin delivery to enable interactive shell.
2026-01-04 02:03:01 +01:00
..
README.md docs(rumpk): Add module READMEs per Panopticum doctrine 2025-12-31 20:18:47 +01:00
header.zig feat: Initialize Rumpk Modular Unikernel 2025-12-31 20:18:47 +01:00
linker-riscv64.ld Phase 37: The Glass Cage - Memory Isolation Complete 2026-01-04 02:03:01 +01:00
linker.ld feat(rumpk): Phase 7 Verified - Subject Zero Launch 2025-12-31 20:18:48 +01:00

README.md

Rumpk Boot

Purpose: Bootloader headers and linker scripts

Contents

File Purpose
linker.ld Default linker script (ARM64 QEMU virt)
header.zig Multiboot2 header (future)

Memory Layout (ARM64 QEMU virt)

0x40080000  _start (Entry Point)
0x40080000  .text
            .rodata
            .data
            .bss
            Stack (16KB)

Future

  • linker-x86_64.ld - x86_64 QEMU q35
  • linker-riscv64.ld - RISC-V QEMU virt
  • EFI stub for real hardware