[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Mon, 27 Oct 2003 14:50:19 +0100
> Designing computer programs, in general, is always a tradeoff between
> flexibility and performance AFAIK: The more flexible the system is, the
> more resource-consuming it is. So, micro-kernel based multi-server
> systems may be slower than monolithic kernel based systems (although
> recent micro-kernels implementations such as L4Ka::Pistachio seem to
> perform much better than first-generation ukernels), but it's probably
> worth paying this price to have highly customizable system.
Performance is not the only aspect. As an example, consider an OS
with filesystems or drivers in userland. A bug there would take the
FS server or driver server down, but everything that is not directly
dependant upon those, would still work as expected. Compare this to
monolithic kernels: a small bug somewhere (even in not-so-important-
places) and you're rewarded with an immediate panic().
BTW, bugs in KLDs, LKMs, Linux Kernel Modules etc... are not
harmless either: you'll panic the kernel as well, because the
process runs in priviledge mode too.
Farid Hajji. http://www.farid-hajji.net/address.html