Skip to content

Open Cube OS 1.0.0

Choose a tag to compare

@cubestudio-dev cubestudio-dev released this 24 Oct 05:19

Open Cube OS 1.0.0

The first public, SemVer-numbered release. This is L0 complete: a
from-scratch, self-contained x86_64 kernel with a WinRE-style recovery
shell, built from 140,672 lines of original C/assembly under Apache 2.0.

What Open Cube OS 1.0.0 is

  • A real kernel, not a Linux fork. Preemptive priority +
    round-robin scheduler, 4-level paging, kmalloc heap with #PF growth,
    256-gate IDT with IST stacks, LAPIC, 100 Hz PIT + HPET/PM-timer/TSC.
  • Ring 3 out of the box. ELF loader, 53 syscalls, signals,
    fork/exec/pipes/select/mmap, dynamic linking (in-tree ld.so, PIE,
    dlsym) - user programs run unprivileged.
  • Boots everywhere the PC platform goes. GRUB 2.12 hybrid ISO
    (BIOS El Torito + UEFI image), multiboot2 protocol, 512 MiB RAM is
    comfortable, disk optional, A/B slot menu.
  • A recovery shell by design. 233 commands covering inspect,
    diagnose, repair, install and update - the system is the
    WinRE-style environment (oc> is the prompt).
  • 16 driver families. NVMe, AHCI, ATA-DMA, virtio-blk, USB MSC,
    SCSI (LSI); e1000/e1000e/igb/ixgbe/rtl8139/rtl8169-family/BCM57xx
    NICs; HDA/AC97/SB16/ES1370/virtio sound; UVC cameras; UHCI/OHCI/EHCI/
    xHCI USB stacks; ACPI with a real AML walker and S3 suspend/resume.
  • A full TCP/IP stack. ARP/IPv4/ICMP/UDP/DNS/TCP with congestion
    control, sockets, firewall, an HTTPS client (TLS 1.2/1.3 + X.509
    chains), and SSH both as client and server.
  • Filesystems. FAT32 with LFN, exFAT, ext4, ramfs; GPT/MBR
    partitions; A/B update slots.
  • A TUI desktop. Desktop, taskbar, menus, forms, editor and system
    apps - plus a Chinese console layer (16x16 font, pinyin IME).
  • Reliability. Crash dumps to serial + /etc crashlog, kernel log
    with rotation/levels/filters, health monitor (CPU/mem/tasks/IO +
    JSON export), hardware watchdogs (Intel TCO + ACPI WDAT), OTA
    updates with SHA256 + signatures and rollback.
  • The L1 extension surface. 162 numbered interfaces (the contract
    upper layers build on; see INTERFACES.md) and a shared-object loader
    that makes L1 modules loadable at runtime. L1 itself is not shipped
    with L0 - the surface is the product.

What changed since WP-14-docs_release

  • The release version is now a fixed Makefile literal
    (OC_RELEASE_VERSION ?= 1.0.0) instead of a git describe --tags
    derivation - the banner, uname -a, the OTA manifest and the ISO
    volume id all read Open Cube OS 1.0.0.
  • Versioning switched to SemVer (docs/release/versioning.md, bilingual).
  • The public-facing surfaces (website facade, README, docs center, wiki
    sources) no longer carry the internal work-package naming; it
    remains in the engineering history (git, changelogs, code comments).
  • Website/docs fixes: docs index table link typo (en/zh), facade
    fallback version strings, arch-page L1 origin column made
    tech-area based.

The numbers (machine-verified at build time)

Metric Value
Shell commands 233
L1 extension interfaces 162 numbered + documented unnumbered groups
Syscalls 53
Source lines 140,672
Build number 278 (commit count 257 + the +21 alignment offset)

Known issues

  • The OTA package embeds the build date (UTC day granularity): it is
    reproducible within a day, not across days.
  • The Windows build path (build.ps1) forwards to WSL2/MSYS2 and is
    statically verified only - no native Windows host was available.
  • TUI=n / CHINESE=n builds ship 216 commands (17 Chinese/TUI commands
    compiled out) - documented in BUILDING.md.

Verification (this release, on the release ISO)

Reproducible build PASS (byte-identical across two clean builds) |
BIOS boot gate PASS (233 commands, oc> ready) | UEFI boot gate PASS
(q35 + OVMF, 233 commands, oc> ready) | regression 28/28 | watchdog/
logging/health E2E 14/14 (TCO and WDAT real resets) | website verified
in a real browser (bilingual, dark mode, 390px, search, zero console
errors).

Assets

File Size SHA256
opencube-1.0.0.iso 12,326,912 cee135aa49d2c62f8fce5bd39444867e169bb9ee62419846454d386c297b82e3
opencube-1.0.0-src.zip 4,279,323 17cfb67b03c0ca75537275995efffa8c0765af720936a94725d1563ce3ed3ba8
opencube-1.0.0-update.tar.gz 1,058,350 3061d1be9893b0782636ebd3cd4ebb77d8c22d17a847e9d367ec804e4f3e90a9

SHA256s are filled by the release pipeline (tools/update_website.sh
output + the download page). Verify any copy with sha256sum.