TranquilOS

Direction, not date promises.

Work is grouped as Done, In Progress or Exploring, in sync with the repository README and TODO.

Done

Shipped · runs on QEMU / hardware

  • AArch64 exception model + MMU virtual memory (EL0–EL3)
  • SMP preemptive scheduler per-CPU + load balancing, split scontext/xcontext
  • Capability access control CNode / VSpace / Endpoint / Timer / Futex / IRQ
  • Migrating-thread synchronous IPC + endpoint-pool elastic IPC
  • Upcall mechanism kernel → userspace call forwarding
  • SystemDaemon procmgr / memmgr / ipcmgr / virtmgr
  • EL2 Type-1 hypervisor stage-2 · vGIC · vTimer · vPMU
  • Leveled initcalls LV0–LV7
  • Loadable kernel modules CFS scheduler plugin
  • 12 framework services window / file / network / device / app / font / audio…
  • Graphics stack + 14 apps LVGL · FreeType · PortableGL · 800×480
  • GN/Ninja + IDL tooling service interface code generation
  • Four boot platforms QemuVirt · Pi3B · Pi4B · CM4

In Progress

Tracked in the repo TODO

  • Process-exit resource release completing capability, memory and IPC resource reclamation when a process dies
  • Service startup dependencies adding deps declarations to service configs so init builds the launch order from the dependency graph instead of a fixed sequence

Ongoing polish

  • Performance tracing extending perf / perfmgr coverage across subsystems
  • Documentation keeping design and interface docs in sync with the implementation

Progress lives in the repository.

Every milestone has commit history and a runnable image. Clone the repository to verify it.

verify it yourself
$ git clone https://github.com/nerossoft/TranquilOS kernel $ cd kernel && source env_setup.sh $ ./run_qemu_virt.sh ✓ every "done" item, running in front of you