[Top][All Lists]

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

Re: L4Mach or Refactor Hurd Servers?

From: Roland McGrath
Subject: Re: L4Mach or Refactor Hurd Servers?
Date: Mon, 5 Nov 2001 23:07:23 -0500 (EST)

libports is a pretty good approximation of what we (the Hurd developers)
think an IPC system ought to provide for server writers.  It is certainly
an open question as to how much is done in the microkernel's IPC system and
how much is done in a user-level library.  We do have strong opinions about
the guarantees that should be provided, and have designed the Hurd around
these assumptions (such as that no-senders notifications are guaranteed to
be delivered soon when a task and all its send rights get destroyed, and
this cannot be broken by any user-level action).  (When I was working on
the now-dead Fluke microkernel at the University of Utah, which had an IPC
system somewhere in between Mach and L4 but much closer to L4 in its
simplicity, we implemented a libports-like abstraction layer with the same
essential properties as Hurd's libports on top of the much simpler
microkernel abstractions.  Of course that work was never really finished
and research on that microkernel was abandoned before it was entirely

People keep saying they think the Hurd is "deeply wedded" to Mach IPC.  I
think all those people are just not really looking at the fundamentals of
the Hurd code.  Yes, we use MiG RPC presentations and Mach port operations.
But aside from syntax that is trivial to change, we have a fairly small
number of dependencies on Mach's idiosyncratic IPC features (like send-once
rights and disconnected RPC).  We have always been opening to redesigning
parts of Hurd implementation to fit better with different IPC systems.
Noone has ever gotten specific about what they want to do.  I'm not sure
that I'm on the l4-hurd list, so perhaps there has been some discussion
there that I haven't seen.  But every time someone posts to bug-hurd with
their opinion about the Hurd's relationship to Mach, they speak in
completely vague general terms and never present anything concrete about
the details of the IPC system they'd like to work with, how they would
adapt the Hurd to use it, and what the problems might be.

As to your specific question, I can't imagine that anything you might call
"L4Mach" would be a worthwhile thing to do from a Hurd perspective.  But I
am only guessing what you really have in mind, since you have not been at
all specific.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]