抢先体验 上一代

SpaceOS 8

内核是 C 写的 UNIX-like 内核 Uinxed-Kernel,用户态是一整套自研的桌面和系统程序。第二版镜像修好了 xHCI 上的 USB 键盘和鼠标。

内核版本
Uinxed 1.0.0-alpha.1
架构
x86_64
内核仓库许可
Apache-2.0
Minecraft 在 Weston 桌面中运行的截图,世界完整渲染,生命值、饥饿条、快捷栏和准星都正常
Minecraft 运行在 Uinxed 内核上(Alpine Linux v3.24 + Weston,QEMU/KVM)。

抢先体验版,不是正式发布

内核已在实体服务器上启动,桌面能运行;图形和部分 ABI 还在补。

简介

  • 用户态约 29.2 万行,内核约 18.1 万行,全部自研。
  • 内核实现 Linux 6.12 的系统调用 ABI(编号 0–462)。
  • 已在 Dell PowerEdge R410 等实体服务器上启动。
  • 内核仓库使用 Apache-2.0 许可。

系统结构

从上到下:

  1. SPUI 桌面与应用:合成器、浏览器、终端、文件管理器等。
  2. X11 兼容层与 VortexGlass 窗口主题。
  3. 自研库:libc、libgfx、imgui。
  4. Linux 6.12 系统调用 ABI:用户态和内核的分界。
  5. Uinxed-Kernel:调度、内存、VFS、网络、驱动。
  6. Limine 引导:UEFI 与 Legacy 都支持。

能跑的现成软件

程序状态说明
OpenJDK能运行为它重写了信号、SMP 和中断路径。
DOOM能运行经自研的 X11 兼容层运行。
systemd初步跑通为它补了 Cgroup v2 和命名空间。
Minecraft团队实测见页首截图。

桌面与应用

  • SPUI 桌面:dock、壁纸和窗口管理。
  • X11 兼容层:从零写的 X11 服务器,实现 120 个核心协议请求。
  • VortexGlass:Aero 风格的毛玻璃窗口,主题可在 tech / win98 / vortexglass 间切换。
  • init:自研 PID 1,带服务监管和 systemctl 风格的命令。
  • libc / libgfx / imgui:自己的 C 库、图形库和 GUI 工具包。

代码量最大的几个应用:

程序作用行数
browser浏览器,含 UxHtml 渲染引擎和 JS 引擎25,713
libgfx图形库与控件库21,785
compositor窗口合成器12,320
settings系统设置3,064
terminal终端仿真器2,869

另有开机向导、编辑器、文件管理器、活动监视器、计算器等,都是自研的。

Uinxed-Kernel

  • 调度:EEVDF,SMP 负载均衡,futex 优先级继承。
  • 内存:buddy + slab,四级页表,页缓存和 swap。
  • 文件系统:VFS;支持 FAT、exFAT、ext2/3/4、NTFS 和 ISO 9660。
  • 网络:自研 TCP/IP 协议栈(IPv4 / IPv6),e1000 和 RTL8139/8169 网卡驱动。
  • 驱动:USB HID、AHCI、NVMe、DRM/KMS、VirtIO-GPU、HD Audio、ACPI。
  • 安全与 IPC:seccomp、epoll、eventfd、memfd、PTY 等。

当前状态

实验性系统,不要拿重要数据冒险

请用可抛弃的机器和测试盘。NTFS 写入驱动还不能信任。

已经跑通

  • 在实体服务器上启动。
  • 引导 Alpine Linux 并拉起图形桌面,Weston 和 Xfce 都验证过。
  • SPUI 桌面和自研用户态。
  • DOOM 和 OpenJDK。

还在做

  • GPU 驱动、音频和部分 Linux ABI。
  • PS/2 输入、epoll 唤醒和调度器的验证。
  • 让 systemd 真正可用。

第二版镜像修复了 xHCI 上的 USB HID,第一版仍然保留,见版本记录。

构建与运行

需要 make、gcc(建议 13.3+)、qemu 和 xorriso。

  • QEMU:make run,串口输出直接到终端。要抓内核日志,把 limine.conf 里的 console=tty0 改成 console=ttyS0。
  • 实体机:按仓库 README 的 Run on physical hardware 一节准备引导介质。

内核源码 · 配置要求 · 下载镜像