Space is a component-based operating system built on a five-layer architecture:
.in ← native language
↑
Inauguration ← compiler — the real OS contract
↑
SCI ← component image format (replaces ELF)
↑
Space ← operating system, component runtime
↑
Nanokernel ← hardware enforcement layer
The native model is component + capability + object + execution graph — not
process + file + syscall + user. There is no POSIX in the kernel. Linux, Darwin,
and Windows compatibility are .in microservices that translate legacy concepts
into Space primitives.
The nanokernel root, written in .in and compiled by
Inauguration, enters x86_64 long mode
under QEMU. The maintained checks verify the shell, in-kernel SCI loader
self-test, Linux-personality demo, VFS, time service, component deny policy,
network traffic, and external display/input SCI components. NVMe-backed writes
still time out after storage-component startup. The standalone memory-backed
Volume SCI component completes init, write, and read RPCs under QEMU.
Subsystem status is tracked in architecture.md.
Measured on macOS ARM64 (M3), Inauguration v0.7.1.
| Metric | Value |
|---|---|
| Metric | x86_64 KVM |
| -------- | ----------- |
| Boot image size | 230,662 B |
| Kernel compile (warm, cached) | ~27 ms |
| Boot to interactive shell | ~2,000 ms |
| SeaBIOS + boot | ~200 ms |
| Kernel init to shell | ~1,800 ms |
Measured via serial output polling. KVM on Intel i9-7960X (Fedora 43, WSL2). TCG on Apple M3 (macOS 15). Boot time is dominated by SeaBIOS firmware init and serial output through the emulated 16550 UART.
- Most kernel init time is waiting for PIT ticks for timer calibration.
- The warm compile path is cached by source hash; repeated edits rebuild fast.
scripts/boot.shdrops into an interactive shell. Typehaltto exit.scripts/bench-boot.shruns 5 iterations and reports median/min/max.
| Arch | Compiler status | Kernel status |
|---|---|---|
| x86_64 | Native lowering, boot image, ELF object | Boots verified subsystems |
| ARM64 | Native lowering, boot image, ELF object | Platform boot work remains |
| RISC-V | Planned | — |
Requirements: clang, nasm, qemu-system-x86_64, and Inauguration checked
out at ../inauguration.
bash scripts/check-qemu-boot.sh # full boot verification
bash scripts/build-multicomponent.sh # SCI component loading demo
bash scripts/check-sci-contract.sh # metadata validation
bash scripts/check-network.sh # e1000 ARP/UDP test
bash scripts/check-terminal-editor.sh # serial editor save testBrowser demo (Alpenglow-style v86 shell): see docs/v86-website.md and website/.
kernel/
kernel-root.in nanokernel root component
domain.in memory domain subsystem
channel.in cross-domain channel fabric
net.in e1000 NIC driver
guest-service.in SCI guest component example
components/
pci.in PCI bus enumeration
volume-mem.in standalone memory-backed Volume SCI component
boot/
multiboot.asm x86_64 CPU bring-up (32-bit → long mode)
scripts/
check-qemu-boot.sh full boot verification
build-multicomponent.sh SCI loading demo
check-sci-contract.sh metadata validation
check-network.sh network driver test
check-terminal-editor.sh serial editor save test
Per AGENTS.md, Space owns the OS contracts, examples, SCI profile,
and boot plan. Inauguration owns the generic compiler capabilities:
- freestanding target support (
x86_64-unknown-none) - SCI-compatible component metadata emission
- native x86_64 lowering, instruction encoding, boot image assembly
- Core IR optimization
- multi-frontend support (.in, Rust, Go, V, Tree-sitter polyglot)
Inauguration does not depend on this repository. Space does not add Space-branded targets to Inauguration.