Hacker News new | ask | show | jobs
by blackrock 1921 days ago
On a side note. Is there any benefit to a micro kernel operating system anymore?

Linux is a monolithic kernel.

One drive of course, is to have a micro kernel that will allow you to update your operating system as needed, without the need to reboot.

Can this still be accomplished with a micro kernel system, or is this now an obsolete method for operating systems design?

1 comments

Most of the modularity and security advantages still apply today. Performance is also good, unlike early implementations. Google is developing a microkernel operating system called Fuchsia, possibly to replace Android https://en.wikipedia.org/wiki/Google_Fuchsia
Is it because of runtime speeds (the slowness) that prevents microkernel operating systems from being more prevalent? Or is it just because Linux is good enough, and it became popular and free?
There is a speed impact but it's mostly negligible, especially on modern hardware. The main reason is that building an entire operating system requires enormous investment beyond what most companies are willing to spend. But Google seems to be willing. And even if you succeed, people will inevitably chase you on Linux app compatibility.

Some well known open-source examples are seL4 and RedoxOS.

The speed is not really “mostly negligible”, it’s just something that you accept when you design a microkernel.
Agreed. More services does mean more context switching. The most pure microkernels will have many, and the more practical ones may consolidate some services to reduce context switches. Also, some types of IPC can have a very lightweight context switch; they typically transfer only a few words of data, but this is usually mitigated by shared memory.