
The
microkernel vs.
monolithic debate, whether you boys and girls like it or not, rages on. After
Tanenbaum's article and
an email from Torvalds, another kernel developer steps up, this time
in favour of the muK. A developer of the muK-based
Coyotos writes:
"Ultimately, there are two compelling reasons to consider microkernels in high-robustness or high-security environments: there are several examples of microkernel-based systems that have succeeded in these applications because of the system structuring that microkernel-based designs demand, [and] there are zero examples of high-robustness or high-security monolithic systems."
Member since:
2006-02-08
I think this is a more honest piece than the what Tanenbaum has wrote.
When I learn QNX I did use shared strctures but it was more for ease of use than for "being right". I would have failed in the ukernel concept by using shared memory.
That said, I think Linus is still more or less right about the security than monolithic kernels. This latest piece doesn't change that.
Like many others have said. When you compared a same subset of services that a system provides, be it monolithic or ukernel, you'll end up with similar resutls. A ukernel PLUS the extra services/code outside the ukernel that provides the such services would just work the same as a monolithic kernel. So, compare the bare ukernel with a monolithic kernel that contains so much more is comparing apples and oranges. The only way to make this comparison equal is to add the drivers/services outside of the ukernel into the equation.
On the issue of secure system, "highly successful/highly secure" ukernel system works by stripping down to only the "mission essential" outside ukernel components. A monolithic kernel like Linux could be stripped down to the bare minimum too - and I suspect that the result would be comparable robustness.