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

Re: [Hurd-alpha-devel] Re: L4 instead of gnumach?

From: Ron Farrer <rbf@farrer.net>
Subject: Re: [Hurd-alpha-devel] Re: L4 instead of gnumach?
Date: Fri, 27 Oct 2000 16:19:30 -0700

> This is not completely decided. A MACH emulation layer for L4 was the
> original idea, but I'm completely open to other suggestions. 

  To understand why Mach emulation is bad, you need to know how L4
improved IPC performance. They have improved the performance in
various aspects, but in simple words, they made IPC semantics more
lean. If you add the extra flesh again, the performance would be the
same as Mach. In fact, they demonstrated this in the paper on
Unix/L3. Anyway, read articles/papers on L3/L4 as many as
possible. You should be able to realize how difficult getting good
perfomance is. Very careful optimizations are necessary (e.g. see the
paper on L4-Linux).

  However, I think Mach emulation would be a good thing as the first
step, because you will be able to investigate how different L4 is from
Mach and what would be necessary to be done in details. But I'd like
to point out that Mach emulation should be temporary but not a
permanent solution.

> MACH uses cthreads, we figured it would keep things easier by going that
> route. If you think otherwise I'd like to know why? 

  Isn't your (ultimate) goal to remove Mach-things from Hurd? cthreads
is a Mach-only multithreading method, while pthreads is designed for a
platform-independent manner. In addition, obviously, much more
programmers know pthreads than cthreads.

> Overall we want to give HURD some type of direction to go and some type
> of common goal for development. 

  That's a very, very good thing. It is certain that big projects such
as Hurd cannot be cooperatively developed without clear goals. I'm
quite glad to hear that you make an effort. Please call me out when
you begin the work. I'd like to participate. :)

(Of course, I won't devote myself to L4 until I finish the remaining
tasks for GRUB 1.0, though...)


Reply to: