[Arm-netbook] Microkernel-based systems (was Re: Reframing The Holy War)

Paul Boddie paul at boddie.org.uk
Mon Dec 10 16:40:40 GMT 2018


On Monday 10. December 2018 09.02.57 Adam Van Ymeren wrote:
> On December 10, 2018 8:48:56 AM EST, Hendrik Boom <hendrik at topoi.pooq.com> 
wrote:
> >
> >Just curious -- what microkernel systems are available to run on modern
> >home computers just in case one is tired of Linux and wanting to try
> >something else?
> 
> MINIX and GNU Hurd both exist and work.  Hardware support isn't great
> however, might not work on the specific machine you have.

Dave may have mentioned this previously on this list, but here are his 
articles about trying out the Hurd:

"Exploring Alternative Operating Systems – GNU/Hurd"
http://www.boddie.org.uk/david/www-repo/Personal/Updates/2016/2016-08-08.html

"Back to the Hurd"
http://www.boddie.org.uk/david/www-repo/Personal/Updates/2017/2017-06-30.html

He also looked at Inferno, which isn't a microkernel-based system as far as I 
know, but it has some interesting characteristics:

"Exploring Alternative Operating Systems – Inferno"
http://www.boddie.org.uk/david/www-repo/Personal/Updates/2016/2016-09-01.html

Another interesting general-purpose system is HelenOS:

http://www.helenos.org/

This is apparently microkernel-based and should work on modern home computers.

My mini-rant a few days ago discussed a tentative revival of the Hurd using 
L4-related technologies. Although the Hurd eventually got going by using the 
Mach microkernel (also seen in OSF/1, IBM Workplace OS, NeXTSTEP, Mac OS X, 
and so on), there have always been things in it that have been regarded as 
less than satisfactory. As far as I know now, there are certain limitations 
that conspire to produce pathological system behaviour, and this appears to 
have been difficult to remedy:

https://www.sceen.net/the-end-of-the-thundering-hurd/

The principal reason given for no longer pursuing things like Hurd-on-L4 seems 
to be that "we already have GNU/Linux" and that device drivers would need 
writing, alongside the suggestion that people could instead be working on 
other, supposedly more urgent things. The latter suggestion should be ignored: 
if someone wants to work on operating system fundamentals, they aren't 
necessarily going to find working on PDF reader software satisfying, 
especially if no-one is likely to be paying them for their volunteering, 
anyway.

I'm not going to claim that writing device drivers, driver frameworks, 
filesystems, and all the other things are easy enough. However, they do seem 
to get written over and over again, in alternative operating systems (of which 
there are many if you start looking) and in the Linux world itself. Moreover, 
it should be a more approachable activity in the microkernel world precisely 
because drivers are normal programs, not glued-in parts of the kernel 
framework that are subject to continual churn.

My current perception of the weaknesses of various microkernel technologies is 
that their developers mostly seem to be chasing niches, not general-purpose 
computing. That may be making some people good money, but it doesn't 
necessarily help the average computer user. Indeed, with things like Intel 
Management Engine, it can actually be harmful to users instead.

Paul



More information about the arm-netbook mailing list