uBixOS boots to the desktop on ARM64 under QEMU — the next frontier is real silicon.
The Raspberry Pi 3 Model B is the primary target (board in hand, the
best-documented bare-metal arm64 platform): the PL011 UART driver already ported from QEMU
virt is reused directly. New work is a from-scratch BCM2837 interrupt controller,
spin-table SMP start, and the RAM-at-0x0 link via the higher-half migration.
Orange Pi Zero 2W and Pi 4/400 are secondary targets. A bmake image-rpi3 microSD
target is already wired.
Secondary CPU cores already boot and run 64-bit kernel code (opt-in) on aarch64 and x86_64, and per-task FPU/SIMD state + an SMP-safe scheduler dispatch have landed. Remaining for cores to actively pull from the run queue under load: cross-CPU TLB shootdown and the last run-queue-locking hardening.
x86_64 already runs at the standard amd64 higher-half layout with a direct physmap.
Bringing aarch64 fully onto the same model (kernel at a high TTBR1 VA + a physmap whose base
follows the board's RAM base) is what makes real boards like the Pi 3 — with RAM at
0x0 — a config change instead of a fork.
A native UEFI application loader for x86_64, alongside the ARM firmware boot paths. Required for booting on modern PC hardware without legacy BIOS support.
With BSD sockets, DHCP, wget, and TLS (httpsget / BearSSL) all
working, the path is open to fetching and installing software over the network —
a simple package format served over HTTPS, plus an SSH client.
Three-stage Clang bootstrap: the host cross-compiles a Clang that runs on uBixOS (Stage 0), uBixOS uses it to compile Clang from source (Stage 1), Stage 1 compiles again reproducibly (Stage 2). After Stage 2, the cross-compiler is never needed for Clang again. Apache 2.0 — compatible with BSD, unlike GCC GPLv3.
Promote the native UbixFS pool to the default 64-bit root filesystem across all arches, plus real SD/EMMC and USB mass-storage drivers on hardware — the storage stack the ARM boards need beyond the firmware FAT boot partition.
Alternate signal stack for handlers that need isolated stack space —
required for stack-overflow detection (SIGSEGV from a stack guard page).
Also: full ucontext_t population for SA_SIGINFO handlers.
A selection of the major milestones already shipped in uBixOS.