TranquilOS
EN GitHub

从引导,到桌面。

完整运行的 AArch64 object-capability 微内核系统。EL1 仅保留调度、IPC 与异常,其余位于隔离的用户态服务。

三条原则。

01

没有隐式权限

访问任何内核对象,都要同时给出能力、类型与权限。

02

用户态是系统主体

文件、网络、设备与图形各自隔离,由 IPC 协作。

03

端到端可复现

从 bootloader 到桌面,每一层都能独立定位与验证。

六步启动。

  1. 01 / EL3

    Bootloader

    平台初始化,装载镜像。

  2. 02 / EL2

    Hypervisor

    建立 stage-2 与虚拟中断。

  3. 03 / EL1

    Microkernel

    接管 capability、IPC 与调度。

  4. 04 / EL0

    SystemDaemon

    创建进程、内存与命名空间。

  5. 05 / EL0

    Framework

    启动独立用户态服务。

  6. 06 / APP

    Applications

    进入完整图形桌面。

内核边界。

CAP / 01

Object-capability

64 位 cref 定位 CNode slot;对象类型与 rights mask 共同授权。

IPC / 02

迁移线程 IPC

调用方执行上下文直接迁入被调地址空间,避开消息队列唤醒。

SMP / 03

调度/执行上下文分离

调度元数据与寄存器状态分离;每个 CPU 独立调度。

IDL / 04

服务接口代码生成

.idl 生成客户端、服务端、传输结构与 ABI 校验。

完整系统。

APP

图形与应用

LVGL · FreeType · PortableGL · 14+ applications

EL0

系统服务

进程 · 内存 · 文件 · 网络 · 设备 · 窗口

EL1

内核核心

异常 · MMU · SMP · IPC · IRQ · timer · futex

EL2

虚拟化

Type-1 · stage-2 · vGIC · vTimer · hypcall

EL3

引导

平台初始化 · 镜像装载 · 异常级交接

一条命令,启动系统。

脚本完成构建、镜像组装,并启动 QEMU。

构建指南
quick start
# 需要 toolchains/aarch64-elf(见构建页) $ git clone https://github.com/nerossoft/TranquilOS kernel $ cd kernel $ source env_setup.sh && ./run_qemu_virt.sh ✓ boot.img · system.img assembled ✓ qemu: 4 cores · 2G · virtio blk/net/input/snd · ramfb