Friday, October 4, 2013

What's the thing with microkernels anyways?

I've recently been reading wiki (both pedia and C2[1]) on microkernels and exokernels, and... I'dun get it.

The basic idea behind both micro- and exo-kernels is to strip down to the bare essentials, and have most of the stuff that's "normally" handled by the operating system—hard disks, cds, network, display, input—handled by "driver servers" that run like regular programs instead. The idea is that since these are independent bits, you can start and stop them while the computer's on, upgrade them without rebooting, turn one off and turn on another, and maybe even have more than one of the same kind running at once.

(Incidentally, it occures to me that a VM is rather like a microkernel running a monolithic libOS)

This is an absolutely great idea, if it's done right, but there seems to be a lot of consensus in the computing community that that it's not a totally great idea and it's not as much of an improvement as it cracked up to be. This is utterly confusing to me, 'cause I can already see it: What is X11 but a graphics-card driver server?


No comments:

Post a Comment