A from-scratch
x86_64 kernel.
Boots into ring 3.

Open Cube OS 2.2.0 boots through its kernel (L0), launches the default ring-3 application — the ush user shell with 251 commands over the SYS_L1SVC service surface — and falls back to a WinRE-style recovery shell (oc>) whenever the ring-3 world cannot start. Not a Linux fork: 130,572 lines of original code, Apache 2.0.

qemu β€” Open Cube OS 2.2.0
[oc] Open Cube OS 2.2.0 kmain entered
boot complete .................... OK
crash recovery armed ............. OK
l1 launcher: booting 'ush' (ring 3, 53800 bytes)

Open Cube OS User-space Shell (WP-08)
ush> mounts
VFS mount table:
  /  ramfs
ush> lsblk
Block devices: (none attached)
ush> cryptotest
AES-128-GCM NIST vectors: PASS (all)
ush> exit
l1 launcher: default L1 app exited; recovery shell taking over
oc> █
251
commands
158
L1SVC ops (17 services)
54
syscalls
130,572
lines of source

Features

A real kernel, not a demo: preemptive scheduling, four-level paging, ring-3 processes, a VFS over four filesystems, a full TCP/IP stack with TLS and SSH (client and server), 16 driver families, crash dumps, hardware watchdogs, and OTA A/B updates.

boot

Hybrid BIOS + UEFI

One ISO boots both firmware paths through GRUB 2.12, with an A/B slot menu and the kernel attached as its own install payload.

memory

PMM / VMM / heap

Bitmap physical manager over the multiboot2 map, 4-level paging, kmalloc with coalescing and stack/heap growth by page fault.

cpu

Preemptive scheduler

Priority + round-robin over TCBs, 100 Hz tick, soft-timer wheel, IST-separated exception stacks, live 3/3 trap self-test on every boot.

ring3

User programs

ELF loader, 54 syscalls, fork/exec/pipes/signals/select/mmap, an in-tree shared-object loader with dlsym and PIE relocations - and the SYS_L1SVC + SYS_NETCMD service bridges.

net

TCP/IP + TLS + SSH

Seven NIC driver families, congestion-controlled TCP, sockets, firewall, an HTTPS client with X.509 verification, and a real sshd in-guest.

storage

NVMe to FAT32

AHCI/ATA-DMA/NVMe/virtio/USB-MSC/SD/SCSI block devices; FAT32 with LFN, exFAT, ext4, ramfs; a persistent /etc volume.

usb

Four USB stacks

UHCI, OHCI, EHCI and xHCI host controllers with MSC, HID, serial and audio classes - hotplug included.

reliability

Crash + watchdogs

Register dumps to serial and crashlogs to /etc, Intel TCO and ACPI WDAT hardware watchdogs, policy watchdog slots, health alarms and JSON export.

shell

Two shells

ush boots in ring 3 with 133 service commands plus built-ins (pipes, jobs, wildcards, aliases, editor); the oc> recovery shell keeps 99 commands for when the ring-3 world cannot start.

tui

Terminal UI

Desktop, taskbar, menus, forms, editor and system apps on the framebuffer - plus a Chinese console layer with a pinyin IME.

ota

A/B updates

Manifest-driven OTA with SHA256 + signature verification, staged install onto the inactive slot, automatic rollback.

l1

17 services / 158 ops

The ring-3 surface is the contract: 17 SYS_L1SVC service categories with 158 numbered ops, every operational command class behind one syscall. The v1→v2 mapping table ships in INTERFACES.md.

Quick start

From download to an oc> prompt in about a minute. Any machine with QEMU works; real hardware boots the same ISO from USB.

1

Boot the ISO in QEMU

One command - the ISO is self-contained, 512 MiB of RAM is comfortable.

$ qemu-system-x86_64 -m 512 -cdrom opencube-1.0.0.iso \ -netdev user,id=n1 -device e1000,netdev=n1
2

Watch it come up

One OK line per subsystem: multiboot2 handshake, long mode, framebuffer, IDT, PIT, PMM, drivers, VFS, network, shell.

[00:00:00.000] multiboot2 handshake ......... OK [00:00:01.710] service registry: 17 services collected . OK Open Cube OS ready. Type 'help' for commands.
3

Drive the machine

Bring up networking, pull a page, inspect the system - all from the recovery shell.

oc> dhcp && ping 10.0.2.2 oc> wget 10.0.2.2 oc> dmesg oc> help -a
4

Go deeper

The documentation center has the user manual, the command reference, the developer handbook, the L1 extension guide and the architecture deep-dives.

It really runs

Captured from the release ISO in QEMU - the BIOS and the UEFI boot path, straight to the shell prompt.

Open Cube OS booted in QEMU via legacy BIOS, showing the kernel boot log and the oc> shell prompt
Legacy BIOS boot800×600
Open Cube OS booted in QEMU via UEFI (OVMF), showing the kernel boot log and the oc> shell prompt
UEFI boot (OVMF)800×600

The two-layer idea

“Everything is extensible” is the whole design: L0 is a complete kernel and nothing more; everything users actually see above the shell is meant to be an L1 module riding the surface.

l0

Open Cube OS

The kernel + the oc> recovery shell. Boots, diagnoses, repairs, installs, updates. This repository.

l1

Upper extensions

The ring-3 service world - ush, ld.so and the dynamic-linking programs ship in-tree under l1apps/; every operational command class runs behind the 17-service SYS_L1SVC surface.

goal

Cube OS = L0 + L1

The roadmap: a complete, daily-usable system assembled from the kernel below and the extension ecosystem above.

deep dive

See the whole picture

Boot flow, every kernel subsystem, the TUI desktop and the 17-service L1SVC surface, each on its own page.