4 ms·
Good points. Nevertheless, it's still puzzling why microkernels have done so poorly, despite them being superiour in theory. Almost all the ones mentioned here
by juhanima 9y ago
Good points. Nevertheless, it's still puzzling why microkernels have done so poorly, despite them being superiour in theory. Almost all the ones mentioned here have waned into a curiosity or niche, and maybe also QNX starts to get a bit long in the tooth, having been released in 1982. OS X of course is another story, but also based on 1980's ideas with the Mach kernel. Which is why it's interesting to see another open-source contender to appear from a clean slate.
If I remember right, Linus's main argument against Tanenbaum was that the overall state gets so dispersed between the various services that make up a full-fledged OS, that eventually a microkernel-based system just gets unpredictable or starts performing poorly. I think the discussion was inconclusive, although for me Linus's argument sounded intuitively convincing.
- tathougies 9y agoIf the argument here is that microkernels have failed because they are incredibly successful in two very important niches, then I feel like you are applying a double standard. Ultimately, Linux also is not all that popular except in two niches: servers and cell phones. Windows is also not popular except in a niche: desktop computing. Ultimately, you have arbitrarily declared several very prevalent forms of computing to be 'niche', while declaring several equally prevalent forms to be 'popular'. One of my hypotheses above is that we tend to dismiss reliable forms of computing as 'not really computing', because we expect computers to fail. When computers work, we think of them as mechanical machines or devices (the way we might view eyeglasses for example). I feel like your subjective opinion of what is and isn't niche just further demonstrates this point. My guess is that there are more instances of QNX (and systems like it) than we realize. There could easily be as many as Windows or OS X (almost certainly the latter, I feel).
- juhanima 9y agoThat is not my argument, because I do not think microkernels have failed. Sorry, if it came out that way. I do not have a strong opinion one way or the other, just curious if there is something to what Linus said and more than meets the eye. As it still seems to me, that microkernels have not fared quite as well as could have been expected thirty years ago, when the ideas first crystallized. You are totally right that microkernels have been very successful in many different areas. I am afraid to even mention, that to me it seems they are most often pretty specialized areas with targeted applications and hardware choices. Which is why I'll welcome Fuchsia, especially if it is meant to be a general purpose, open source OS for a wide area of applications running on commodity consumer-grade hardware. That's all.
- lobster_johnson 9y agoHave they done so poorly? There aren't that many mainstream OSes, period, and there's not a lot of a space for a new OS. In embedded computing, various commercial sectors such as aerospace, and the military, there are highly successful microkernels most people don't know about -- QNX is the most well known example, but there are also others such as Integrity, and L4 and its many variants are heavily used in embedded settings. L4 runs on tons of small devices, including the iPhone, and is probably the most successful microkernel in existence. Not "niche" by any stretch.
- mschuster91 9y ago> If I remember right, Linus's main argument against Tanenbaum was that the overall state gets so dispersed between the various services that make up a full-fledged OS, that eventually a microkernel-based system just gets unpredictable or starts performing poorly. Well, large parts of the Linux world ended up with systemd, and I haven't yet met a person who had NOT had his fair share of issues with it.