Files
LithosAnanake/kernel/src
rajamesandClaude Opus 5.5 d5b7235464 feat(v4.0.0): every node asks the kernel for its blocks; a born node is not POSTed
A block is a kernel request, as ENGINE.md 3.3 has it: the node puts the
block's number and the address of 256 cells on its stack and writes the
request to port 0, and the kernel leaves the status there.  The requests
are -1, read, and -2, write, the same for every node.  v4/system/blocks.c
serves them from the kernel's block subsystem, which is v3's.  The four
storage registers are gone from the engine.

The device that spoke block messages (4a505a15) is withdrawn with its
test and its message types: Captain Bob ruled on 2026-10-07 that it, a
node's own drive, and nodes with no storage had left the OS as designed
(docs/v4.0.0/MESH.md 8.5).

Hera no longer sends POST to the nodes she births: POST is the kernel's,
once.  Every node has its kernel on port 0; it serves a node's blocks and,
for Hera alone, her requests for nodes and capsules.

Bare metal: the node boots and is POSTed against POST's own block RAM,
and the kernel's chain -- fast RAM, the ramdrive, the virtio disk -- is
set up after POST and before the prompt, as on the v3 path.  The disk is
read and not written: nothing in v4 yet gives the owner's word that it
may be formatted.  A hosted program has the chain's fast RAM, as hosted
v3 has with no disk.  Error 17 is Storage refused.

make -C v4 test and sanitize pass at both widths; hosted-check passes on
three ISAs; amd64, aarch64 and riscv64 boot, POST 538 of 538, with the
typed session: logs/20261007-081603, -081839, -082226.  The hashes are
the same on all six.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-07 08:24:47 -04:00
..

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.