[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Mach, a but choise ?

On Mon, Dec 04, 2000 at 10:51:07AM -0600, Ezequiel Reyes wrote:
> *This message was transferred with a trial version of CommuniGate(tm) Pro*
> > If you must choose between misc. microkernels, the perspective changes:
> > Mach is a ukernel with a rich set of semantics. Therefore it is bloated
> > and not so small than a ukernel should be. They are other microkernels
> > that are much smaller and that provide for faster context switches.
> First of all, thank you for helping this newbie, your explanation have been
> very clear to me, there are still two questions I would like to ask about
> what you say of Mach offering more services than The Hurd really needs.
> first: is all this extra-functionality still present in the GNU version of
> Mach the Hurd currently uses or has it been removed for the sake of resource
> consumption ?
> second: if it hasn't been removed, is it just because the complexity of the
> whole microkernel doesn't allow it without compromising cleanliness or
> stability?

I do not think removing a few functions would make any kind of
difference -- if they are that slow avoid using them.  The reason the L4
people claim that Mach is so slow is that it uses async ipc messages.
What does that mean?  I send a message to you.  Inside the message, I
send a reply port.  After I send the message, I wait on the reply port
until you send me the result.  In L4 they have (only) synchronous
messages based on your tid (thread id) so when you send a message, it
is ``easier'' to optimize.


Neal H Walfield
University of Massachusetts at Lowell
neal@walfield.org or neal@cs.uml.edu

Reply to: