UX/RT - a Universally eXtensible Real-Time OS
Andrew Warkentin
andreww591 at gmail.com
Sun Feb 1 12:06:01 CET 2015
Nils Asmussen wrote:
>>
>> What does everyone here think of my design? Would anyone here be
>> interested in contributing?
> Well, your ideas sound not bad, but also like a LOT of work. And as
> always, you will see the real problems of your ideas only if you
> actually try to implement them. So, better start implementing instead
> of thinking about how the GUI should work ;)
>
I know it's not going to be easy, even with all the third party code I'm
going to be using. I'm dissatisfied with existing mainstream OSes and
think writing a new one is worth it.
Were it FOSS, I probably would have forked QNX, but since it's
proprietary, I have to write my own QNX-like OS. Although I guess
writing my own does give me a chance to make it the way I want to begin
with, rather than hacking an existing OS to work the way I want (there
are several places where I think QNX gets it wrong).
>
> Although I'm wondering a bit that you want to focus on real-time (as
> the name contains that), but did not speak about that at all...
>
Fiasco.OC already has realtime support, so that part is done for me at
least. The most important part of userspace realtime support would
probably be making sure that the virtual memory layer of the root task
doesn't add latency. UX/RT will offer finer-grained control over paging
policy than other OSes, with per-file paging priorities (the highest of
which will keep the file locked in memory and prevent page faults from
occurring on that file; a process that wants to avoid page faults could
set the paging priority on all the files making up its address space to
the highest). I'm probably not going to focus on making stuff like
directory lookups realtime (since those will often involve one or more
other servers in addition to the root task). read() and write() will
already be realtime since they will just be thin wrappers on top of
kernel messaging. Making other parts of the OS like disk filesystems and
the network stack realtime would very likely be difficult or impossible
so I'm probably not going to bother there.
More information about the l4-hackers
mailing list