[Top][All Lists]

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

Re: Mach emulation

From: Farid Hajji
Subject: Re: Mach emulation
Date: Tue, 14 Nov 2000 23:28:20 +0100

> > Mach sux because it's too big. Any attempt to emulate Mach on top of
> > L4 will be just as bad. And migrating drivers out to userland won't
> > help.
> The problem is that some of the things provided by Mach are needed by
> the Hurd, and thus have to be supported in one way or the other. We
> may be able to get away from queueing messages in the kernel, but I
> think getting away from everything that resembles ports and port
> rights would break the Hurd: they're used for just those things that
> make the Hurd interesting.
Agreed. Most of the authentication and security in the Hurd does rely
on kernel-protected port-rights. I'm currently respecifying auth and
it seems like we should add port-rights (or some sort of equivalent
entities) to auth or to another trusted server like l4-mach, effectively
providing some kine of mach emulation, like Okuji suggested. We must
be careful though not to implement too much Mach overhead this way,
if we want the Hurd/L4 to fast enough. IMO a more strict specification
of the whole Hurd is needed, but as a first try, l4-mach + emulation-library
_is_ a good idea.

> > If this is to make sense, hurd needs to be retargeted directly to L4,
> > not some encapsulation of L4. Essentially, hurd will have to be
> > directed towards L4 abstractions, rather then Mach abstractions.
> One approach that might make sense would be to build a port
> abstraction similar to Mach's on top of L4 (but possibly with only
> syncronous messages) to get the Hurd servers running. Next, one could
> try to optimize the Hurd ipc protocols and make them more L4 friendly,
> where needed. For instance, the pager-related ipc:s. With L4 beneath,
> we should get a lot more freedom to optimize than with Mach.

> > If this project is getting serious I might be able to get one or two
> > of my students to help...
> One project (which might be useful for any real os built on top of l4,
> not just Hurd) is a POSIX thread library that multiplexes user threads
> on L4 kernel threads. I'm sure there are others.
BTW, Pthread/L4 is also needed if we redesign the Hurd from scratch...


Farid Hajji -- Unix Systems and Network Admin | Phone: +49-2131-67-555
Broicherdorfstr. 83, D-41564 Kaarst, Germany  | address@hidden
- - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - -
Murphy's Law fails only when you try to demonstrate it, and thus succeeds.

reply via email to

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