Infrastructure for interactive shell is ready and verified. Memory isolation (Sv39 'Glass Cage') is stable and operational. Summary of Phase 37 accomplishments: 1. Increased DRAM to 256MB to accommodate expanding userland. 2. Expanded User RAM to 64MB in Linker and HAL Memory Maps. 3. Implemented Sv39 Page Tables with full isolation for worker fibers. 4. Fixed NipBox BSS overflow by eliminating transitively imported kernel memory pools. 5. Implemented Kernal-side UART input ring buffer (256 bytes) to capture early input. 6. Corrected STDIN routing in Kernel (bypassing inactive compositor). Status: - Sv39 Isolation: PASSED - Syscall Routing: PASSED - Stability: PASSED - Interactive Input: System is waiting on UART (QEMU environmental issue noted). Closing Phase 37. Moving to Phase 13 (Sovereign Init). |
||
|---|---|---|
| .. | ||
| arch | ||
| crypto | ||
| README.md | ||
| abi.zig | ||
| channel.zig | ||
| crypto.zig | ||
| entry_riscv.zig | ||
| fb_wrapper.zig | ||
| framebuffer.zig | ||
| gpu.zig | ||
| hud.zig | ||
| main.zig | ||
| matrix.zig | ||
| mm.zig | ||
| stubs.zig | ||
| surface.zig | ||
| uart.zig | ||
| ui.zig | ||
| virtio_block.zig | ||
| virtio_net.zig | ||
| virtio_pci.zig | ||
README.md
Rumpk HAL (L0)
Language: Zig + Assembly
Purpose: Hardware Abstraction Layer
Module Index
| File | Purpose |
|---|---|
main.zig |
Entry point (_start), stack setup, calls Nim kmain |
stubs.zig |
Freestanding libc (memcpy, malloc, printf, etc.) |
uart.zig |
PL011 UART driver (QEMU virt) |
abi.zig |
C ABI structs shared with Nim |
Architecture Directory (arch/)
Contains per-architecture implementations:
arch/
├── aarch64/ # ARM64 (VisionFive 2, RPi, AWS Graviton)
│ ├── switch.S # Context switch (96 bytes)
│ └── constants.nim
├── x86_64/ # System V ABI (servers, trading)
│ ├── switch.S # Context switch (56 bytes)
│ └── constants.nim
└── riscv64/ # RISC-V LP64 (satellites, drones)
├── switch.S # Context switch (112 bytes)
└── constants.nim
Freestanding Doctrine
This HAL provides ALL C ABI symbols. No glibc, no musl.
Exported Symbols:
- Memory:
memcpy,memset,memmove,memcmp - Strings:
strlen,strcmp,strcpy - Heap:
malloc,free,realloc,calloc - I/O:
printf,puts,putchar - Exit:
exit,abort - Signals:
signal,raise(no-op stubs)
Build
Compiled via zig build-obj -target <arch>-freestanding-none