Technology
One man, two kernels, and a lot of RISC-V
Key Points
Yuri Zaporozhets of QRV Systems is a busy chap. He's built a new RISC-V-based personal computer, a mainframe on an FPGA, and rewritten QNX – twice. Seemingly every month or two, The Reg FOSS desk gets an email telling us about some astonishing project that he has just got working.
Yuri Zaporozhets of QRV Systems is a busy chap. He's built a new RISC-V-based personal computer, a mainframe on an FPGA, and rewritten QNX – twice. Seemingly every month or two, The Reg FOSS desk gets an email telling us about some astonishing project that he has just got working. We're delighted to see that his most recent one, a new OS called QSOE, is winning some attention in the FOSS world at present. But first, we thought we could tell a more complete story of how he got here by describing some of his previous projects. (By way of a disclaimer, we feel that we should say up front that he does use Anthropic's Claude LLM to help. To his credit, he does clearly state this.) GateMate Personal Computer At the end of 2025, Zaporozhets wrote to tell us about his GateMate Personal Computer. The GateMate PC is something similar to a fairly high-end late-1980s IBM PC-compatible, but instead of a 286 or 386 CPU, it has a 25 MHz RISC-V core. He told us the main inspiration for the GateMate PC: "The very first computer I saw in my life: an IBM PS/2 Model 30, in 1992. It also started in text mode." We worked on a few of those, and they were not great machines. The GateMate machine should easily outperform the later, faster Model 30-286. He also acknowledges another project: "the NeoRV32 softCPU by Stefan Nolting is great." It has a VGA port that can output 80x30-character text in what back then we used to call Hi-Color, 8 KB of ROM containing a BIOS, and – although it's still in the early stages – its own OS, which he calls GMDOS. The characters are double-byte ones using UCS-2 Unicode. The GateMate gets its name from the host hardware because the design is mostly software: it's implemented on an inexpensive FPGA board, the €50 Olimex GateMate A1-EVB (that's about £42 or $57). Its video controller is an original design, and he has added extra RAM: the machine has 8 MB of additional PSRAM on two chips, via a QSPI interface. He blogged about the project, from receiving the board last August to getting a PLL working, to getting video out of it. The Olimex GateMate board can do a lot more, though – which leads us to his next project. GateMate System/359 Also implemented on the same FPGA board is Zaporozhets' miniature mainframe, the System/359. This isn't a clone of the IBM System/360 mainframe series, the machines that introduced the idea of different computers being software compatible – it’s more of a tribute to it. For starters, the S/359 is a little-endian machine, while the S/390 is big-endian. So it's not binary-compatible with the mainframe architecture, but it's similar. He started the project in January, and later that month, writing about its assembler, said: "GMS/359 keeps what's beautiful about S/360 – the channel I/O model, the clean instruction formats, the PSW concept – while quietly modernizing the rest. Little-endian bytes. Opcode-first encoding. PC-relative addressing. No more base register juggling. The '/359' isn't a typo. It's a declaration: inspired by, not compatible with." Zaporozhets told The Register: "There is a working assembler with the POWERFUL macroprocessor – from NASM. I was a NASM contributor from 1999 to 2004 and maintained its RDOFF2 part. Now RDOFF2 is removed from NASM 3.0, but it continues to live in my asm359 project. "Currently the processor can execute the simple IPL; channel I/O controller works (PS/2 kbd, UART, SYSINFO, even crypto processor (!)). Once I finish the PSRAM module, I will start working with SYS1.NUCLEUS." So we can take it that as well as RISC-V and FPGAs, he has some familiarity with low-level systems design. His next project was with an OS that a lot of folks admire: QNX. Porting QNX 6.4 to RISC-V Although Zaporozhets wrote to us about this back in March, he also went public with it in a Reddit post: QNX 6.4 kernel ported to RISC-V; petition to BlackBerry to relicense old QNX sources under Apache 2.0. QNX has an on-again-off-again relationship with FOSS. QNX has been around since the 1980s, as we reported when the company made QNX 8 non-commercial freeware in 2024. In that article, we mentioned that QNX published the source code of an earlier version back in 2007. Back then, QNX was self-hosting and had its own desktop environment – we showed a screenshot of its Neutrino GUI in our roundup of non-Linux PC OSes back in 2013, and GUIdebook has a whole screenshot gallery. The next year, that QNX 6.4 source code was mirrored from SourceForge over to GitHub, and it's still there. Zaporozhets took this long-obsolete codebase and ported it to RISC-V, targeting his own FU740 "workstation." It's not the whole OS, just "the kernel, the process manager, the C library, the runtime linker." And the license is very restrictive: you can study it and compile it, but not redistribute it. He started this effort over Christmas 2020. "The timing made sense in a particular way. RISC-V had matured. The toolchains were stable. The original QNX sources were 32-bit ILP32, targeting x86, ARM, MIPS, SH, and PPC – no 64-bit port existed, let alone RISC-V. Doing the LP64 transition and the architecture port in a single effort seemed like exactly the kind of large, difficult, satisfying project that a long holiday lockdown invites." But after the initial effort, it languished for five years. When he came back to it, he ended up with a substantial rewrite. He calls the result QRV. In March, he described this in a blog post, QRV Operating System: First Publication. As he puts it: "For clarity: QRV is not a patch on the original QNX sources. It is a ground-up reworking of the 32-bit ILP32 codebase into a 64-bit LP64 system for RISC-V, with deliberate simplifications." By the end of April, QRV v0.27 could boot to multi-user login. A month later, he declared the project finished with version 0.43: "This is the last development post for QRV. The project set out to port QNX Neutrino 6.4 to RISC-V 64-bit, run it on real hardware, and explore what it would take to bring a clean microkernel architecture to a modern open ISA. Those goals are met. v0.43 is the final release." Where next? Well, as the QNX kernel is not truly open source, then the only path forward is to switch to another kernel, one that is truly FOSS. Well, we say "one"… ¿Por qué no los dos? QSOE – Quick and Secure Operating Environment The result is QSOE: "QSOE ships in two variants that share one userspace and one build system. QSOE/N runs on Skimmer, a microkernel written from scratch for this project (SMP by design); QSOE/L runs on seL4 as its kernel." As The Register covered back in 2014, Secure Embedded L4 is a formally verified microkernel OS. We have written about other OSes that use it before: in 2022, we described the new Neptune OS project, which is a combination of seL4, ReactOS, and Wine. Then, in 2025, we looked at Ironclad, which combines seL4 with the C-based Gloire and an Ada layer. There are some very serious precedents for building around seL4, but QSOE doesn't stop there: it also has its own homegrown kernel, called Skimmer, that’s designed for multiprocessor machines. Zaporozhets has been working in this area for a long time. On the QSOE site, he mentions his effort to build a free QNX-like operating system back in 2003. It's still online – it is called RadiOS. In How QSOE started, he describes the inspiration: as a fallback option, a Plan B, if his petition to BlackBerry did not succeed. We sympathize. When we wrote about QNX 8, we got nothing useful back from the company either. Instead, he took all he learned from writing RadiOS and building QRV – via the GateMate PC and mini-mainframe – and did it himself instead. Now he has released QSOE version 0.1. It's under the Apache 2.0 license, and its source code is on GitLab. He also has a new development blog. Yes, Claude may be involved, but he was already developing these ideas 20 years before ChatGPT launched. ®