It's sort of funny how the major kernels are primarily monolithic (please correct me if I'm wrong wrt recent versions of Windows), but academic research says microkernels are better. Worse is better? First-mover advantage?
It's sort of funny how the major kernels are primarily monolithic (please correct me if I'm wrong wrt recent versions of Windows), but academic research says microkernels are better. Worse is better? First-mover advantage?
Either way I'm interested to see if HURD will ever take off in any real sense. For example, could we see an Ubuntu/HURD mix in 5 or 10 years? Will it even matter with that kind of timeframe? Would there ever be any practical advantage to use HURD vs Linux besides more "freedoms"?
that's true, but the "security" is not really what we perceive in the post-google, massively distributed era.
microkernels made sense back when key to uptime was hot-swappable devices. e.g. if your nic goes awry due to a hardware problem, it can crash its driver. in case of a monolithic kernel, this would in turn crash the os, whereas with a microkernel, the rest of the system should continue humming just fine. this makes replacing the failed component possible without causing downtime by shutting down the single node the service runs on.
but nowadays, we know how to set up systems so that taking down an entire node (gasp!) won't harm the operation of the service as a whole. so i don't think microkernels are that relevant anymore.
The problem with microkernels is their advantages (in terms of, a component of the kernel crashing won't take down the box) has rarely been worth it in light of the disadvantages (all that message passing hurts performance). So "better" depends on your POV.