Linked by Kroc Camen on Thu 25th Dec 2008 07:50 UTC, submitted by diegocg
Thread beginning with comment 341741
To view parent comment, click here.
To read all comments associated with this story, please click here.
To view parent comment, click here.
To read all comments associated with this story, please click here.
RE[8]: the list is impressive
by akrosdbay on Mon 29th Dec 2008 06:33
in reply to "RE[7]: the list is impressive"
That's simply not true. Most kernels mix elements of a microkernel with elements of a monolithic kernel. Look at OSX which has a hybrid Mach/FreeBSD kernel. Linux has things like libusb, udev, and fuse which operate from userspace.
According to me there are only two categories Monolithic or Microkernel. This whole hybrid kernel thing is just marketing.
udev does nothing to make linux more microkernel like. It is a dev filesystem that manages the /dev directories and symlinks. Udev just listens for kernel events and manages /dev entries.
Fuse has a kernel module that runs in privileged or supervisor mode.
In a microkernel nothing the kernel in privileged mode only handles IPC, address space management, interrupts and thread scheduling. Everything else is in non-privileged mode.
Also none of this makes any one OS better for everything, which is the point I was trying to make to the OP.
Edited 2008-12-29 06:34 UTC
RE[9]: the list is impressive
by abraxas on Mon 29th Dec 2008 23:29
in reply to "RE[8]: the list is impressive"
According to me there are only two categories Monolithic or Microkernel. This whole hybrid kernel thing is just marketing.
Oh ok, according to YOU! Case closed! Too bad you are completely wrong. Have you heard of XNU which is a hybrid kernel or XOK, MIT's exokernel which is smaller than a microkernel but does not use message passing?
udev does nothing to make linux more microkernel like. It is a dev filesystem that manages the /dev directories and symlinks. Udev just listens for kernel events and manages /dev entries.
Methinks you don't understand the point behind microkernels. The main reason is to move things out of kernelspace to avoid errors that can take down the entire system. By moving more things out of the Linux kernel into userspace it allows some of the same advantages.
Fuse has a kernel module that runs in privileged or supervisor mode.
This is true but the filesystem implementations are completely in userspace.
In a microkernel nothing the kernel in privileged mode only handles IPC, address space management, interrupts and thread scheduling. Everything else is in non-privileged mode.
I guess most implementation of Mach are not microkernels then since they use co-location to move servers into kernelspace because of the atrocious performance of pure microkernels.





Member since:
2005-07-07
That's simply not true. Most kernels mix elements of a microkernel with elements of a monolithic kernel. Look at OSX which has a hybrid Mach/FreeBSD kernel. Linux has things like libusb, udev, and fuse which operate from userspace.
I'm not sure how that is relevant to the discussion.