QSOE project v0.1 is released
Skip to main content
QSOE project v0.1 is released
Get link
Other Apps
June 20, 2026
The first QSOE release, v0.1, is out. It bundles both kernel variants, the boot loader, the userspace, and libc into a single numbered drop, and consists of the following components:
QSOE/N v0.17 , with the custom "Skimmer" kernel.<br>QSOE/L v0.14 , which works together with seL4 version 15.<br>mr-bml v0.5.1 , a GRUB-derived boot loader with support for Multiboot 3, RISC-V Linux-style kernels, and kernels with an EFI stub.<br>quser v0.5 , offering an mksh-based shell (qsh).<br>libc v0.6 .
The two variants share the same userspace above the seam: quser, qsh, and libc are identical, with only taskman and libc.so differing per kernel. That shared userspace is the whole point — one QNX-compatible environment over two very different microkernels.
The milestone behind this release is on the QSOE/L side: it now boots from NVMe storage to an interactive login shell on the SiFive Unmatched (FU740). Spawning the first program off a mounted disk had exposed a pair of deadlocks — taskman blocked reading the spawn image while the read chain's wakes routed back through it — so the Sync* slow path and device-interrupt pulses are now kernel-direct, taking taskman out of the wake path entirely. With QSOE/N (v0.17) already spawning from its own filesystem to an interactive qsh, both variants now reach a shell on the FU740.
The source is on GitLab under Apache-2.0, at gitlab.com/qsoe. Binaries and documentation are hosted on GitHub, and download and installation instructions live on the project website, qsoe.net.
QSOE
Get link
Other Apps
Comments
Post a Comment
Popular posts from this blog
How QSOE started
May 26, 2026
It was the first of April, and work on QRV — my port of QNX to RISC-V — was in full swing. A couple of weeks earlier I had put up an open petition asking QNX Software Systems and BlackBerry to re-license the historical 2007–2009 QNX Neutrino source under Apache 2.0. Around this time a thought settled in: there's a real chance it gets ignored completely. I needed a plan B. I've kept the L4 microkernel in the back of my mind for a long time. I first read about it in the early 2000s, along with its various implementations — the ones with the nutty names (Hazelnut, Pistachio), and the one with the funny name, Fiasco, from the group in Dresden. I met those people in person about ten years ago. I never really stopped thinking about L4 after that; I knew about L4Linux and the rest. And I got particularly interested when I learned about seL4. What seL4's authors did still strikes me as a genuinely novel approach: a real microkernel with a machine-checked proof of functional corr...
Read more
QSOE/L: the same userspace, on seL4
June 11, 2026
The three QSOE/N posts ended with a promise — the other half of the umbrella, QSOE/L, the same userspace running on seL4. This is that post. It is also, in a sense, the first post, because QSOE/L is where the whole thing began. Tomorrow is one month to the day since I started the real QSOE, and the first thing that booted was an seL4 image. QSOE/N, the from-scratch-kernel variant I wrote about first, is the younger sibling. I led with it because the milestone there was loud: a microkernel I wrote myself taking its first breath on real silicon. QSOE/L's story is quieter and, for the shared userspace, more foundational. Everything that runs on Skimmer today was made to run on seL4 first. No kernel to write On seL4 there is no kernel to write, and that is the entire point. seL4 is a verified, capability-based microkernel; the job was never to build a kernel but to build a QNX-Neutrino-shape operating system on top of one. seL4 has opinions, and the strongest of them is about IPC. It...
Read more
Archive
June 20267
May 20261
Labels
QSOE
RadiOS
Report Abuse