30 lines
1.3 KiB
Markdown
30 lines
1.3 KiB
Markdown
# src/starkernel/
|
|
|
|
LithosAnanke — the bare-metal UEFI kernel that boots StarForth directly on
|
|
hardware (amd64/aarch64/riscv64). Built only via `Makefile.starkernel`; the
|
|
only valid acceptance test is the three-arch QEMU boot (see
|
|
`.claude/CLAUDE.md`), never `make test`.
|
|
|
|
- `kernel_main.c` — kernel entry point, driving the boot milestones
|
|
(console init, PMM, VMM, interrupts, timers, kmalloc heap, VM
|
|
bootstrap).
|
|
- `repl.c` — kernel REPL.
|
|
- `doe_log.c` — kernel-side DoE (Design of Experiments) metrics logging.
|
|
|
|
Subdirectories:
|
|
- `arch/{amd64,aarch64,riscv64}/` — per-architecture support (APIC/GIC/
|
|
PLIC interrupt controller, timers, boot/ISR assembly).
|
|
- `boot/` — UEFI loader, ELF loading, kernel command-line parsing.
|
|
- `capsule/` — capsule birth/run/load/validate pipeline.
|
|
- `hal/` — hardware-abstraction-layer implementation (console,
|
|
framebuffer, VT100, memory, host services).
|
|
- `hash/` — XXHash64 content-addressing implementation.
|
|
- `math/` — kernel-build Q48.16 fixed-point arithmetic.
|
|
- `memory/` — physical/virtual memory managers and the kernel heap.
|
|
- `pci/` — PCI bus enumeration.
|
|
- `virtio/` — VirtIO block device driver.
|
|
- `vm/` — kernel VM subsystem (bootstrap, core interpreter, parity
|
|
logging, capsule arena).
|
|
|
|
See `include/starkernel/README.md` for the corresponding headers.
|