> Neal H Warfield wrote: > > If we reimplement mach over an exokernel, it will only decrease > > the microkernel's portability -- we now have a dependency on an > > exokernel rather then a generic piece of hardware. > > What's the difference? Either you port the Mach microkernel or you port the > exokernel. In either case, you have localized machine dependent operations > to a small portion of the overall system code. > > The very goal of the exokernel design is to reduce the number of context > switches required. > > Check out the site at http://www.pdos.lcs.mit.edu/exo.html. This gives a > brief introduction. They implemented a Web server on the kernel, called > Cheetah, which ran eight times faster than NCSA. You can also obtain > volumes of information by going to www.mit.edu and doing a search on > "exokernel." >
An exokernel is not a microkernel. Although they both have similar goals, minimize what the kernel has to do, they approach the problem quite differently. A microkernel attempts to manage the low level resources and export an interface. An exokernel, on the other hand, merely wraps the resources in a security blanket and exports them to the applications directly. This would require a hurd library to provide the current mach environment, which could increase context switches even more. This is, of course, all speculation; if you create a proof of concept and prove me wrong, more power to you. It is my feelings that to use an exokernel will require nearly all of the mach kernel to be reimplemented over it, however, I am very interested in what your ideas are. Best regards, -Neal -- ---------------------------------------------------------------------------- Neal Walfield [EMAIL PROTECTED] UMass Lowell - Fox 1512 Phone: 978-934-5347 Fax: 603-415-3645 Love is the triumph of imagination over intelligence. -- H. L. Mencken