UX/RT - a Universally eXtensible Real-Time OS

Andrew Warkentin andreww591 at gmail.com
Wed Jan 28 02:27:28 CET 2015


I am planning to write a new L4-based multi-server OS called UX/RT 
(initially I will use Fiasco.OC as the kernel since it has x86_64 
support and supports kernel capabilities, but may eventually support 
seL4 as well). Unlike the other current L4 OS environments, it will be a 
multi-server Unix-like OS resembling QNX and Plan 9. I am intending it 
to have good support for both desktop and embedded systems (servers are 
not a huge priority; the microkernel architecture might limit the 
maximum throughput for heavily I/O-bound workloads). I am dissatisfied 
with all the current mainstream OSes and want to take on the challenge 
of making something better. I am planning to reuse as much existing 
third-party code as possible, especially as I will probably be working 
on it alone at first (of course if anybody here wants to contribute they 
can). However, due to the design, the only part of L4Re that I can use 
as-is is sigma0 (which may require minor changes to fit into the 
XIP-based boot process I am going to use). I will be implementing my own 
root task which may use a few parts of moe, although I haven't looked 
too closely at the source for moe so I'm not sure if there's anything 
there that I can use. Other than sigma0, the low-level kernel headers, 
and possibly some parts of moe, I'm not sure if there is much else from 
L4Re (or Genode) that would be useful in the context of a pure Unix-like 
multi-server OS. Most of the code I reuse will come from BSD and GNU 
(which gets me quite far; the root task will probably be the biggest 
part of the base OS that will be primarily original code). I already 
have a very good idea of the design I'm going to use; I'll post more 
about it later.





More information about the l4-hackers mailing list