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

Re: Hurd Advocacy?



Marcus Brinkmann <Marcus.Brinkmann@ruhr-uni-bochum.de> writes:

>  On Sun, Aug 17, 2003 at 05:27:32PM +0100, Mark Wilkinson wrote:
> >  If the decision has been made to go to L4, IMHO work should have
> >  halted on Mach.
>  
>  People have halted on Mach long before L4 even entered the picture.
>  
> >  Forgive my ignorance, but why is L4 3-5 years away? 
>  
>  L4 was released a month ago or so.  But it is not a drop in
>  replacement for Mach.
>  
> >  If the decision has been made to move to a kernel structure that
> >  doesn't exist yet, that strikes me as an *interesting* decision.
>  
>  The L4 kernel is truly minimal.  The Hurd depends on a couple of
>  features in Mach that simply don't exist in L4.  The three core
>  issues:
>  
>  * Device drivers
>  * Virtual memory management
>  * A capability based IPC system
>  
>  L4 does not have any device drivers.  Some people are working on a
>  new device driver infrastructure for GNU Hurd/L4, and drivers for
>  that infrastructure.  It's a huge task, but it is also an interesting
>  challenge.  Device drivers will be in user space and thus can be
>  multi-threaded.  This allows to keep state about a device active in
>  the thread, and can greatly simplify a driver.
>  
>  L4 does not have any Virtual memory management, just some primitives
>  to recursively map pages into other address spaces.  The physical
>  memory is provided directly to the user space.  So we have to
>  implement a VM system.  Neal has some great and ambitious ideas about
>  doing VM management locally in every task, instead of a global
>  server.  This is a dramatic departure from traditional OS design
>  (even from Mach and the Hurd as it is now), and thus needs to be
>  fleshed out from scratch (there are some academic papers on it, but I
>  don't know of a production system doing it this way).
>  
>  L4 provides a minimal IPC system, that allows direct thread-to-thread
>  message sending.  But it only gives a single protection primitive.
>  So it is not usable for a user space multi server system as the Hurd,
>  where untrusted communication is happen on a frequent basis.  This is
>  why a more featureful capability system is needed.  Instead doing it
>  in a central global server (like the port system in Mach is
>  centralized), we want, again, do it locally in each task.  This seems
>  to be a new design to me, and I have worked on the protocols and data
>  srtuctures for that in the last weeks.  I am currently working on an
>  implementation, which is needed very early in any porting effort to
>  L4.
>  
>  So you see, it is not about L4, but about glueing Hurd to L4.  Mach
>  did a lot of things for us that L4 is not doing, and we take the
>  chance to try to more consequently implement the Hurd's fundamental
>  design ideas.  Freedom to the users!  Freedom to map your physical
>  memory as you want it, freedom to use the IPC policy you want, and
>  the freedom to have functional device drivers without getting them
>  approved by a kernel master geek ;) 

Amen !

zeDek
-- 
"Ich habe kein Interesse an einem "Fan"-Forum, hatte aber erklaert, dass  
 ich ein eigenes Forum z.B. mit dem Namen de.alt.wal begruessen
 wuerde." Norbert Harry Marzahn <71Vk5$7LbXB@nm01.vision.IN-BRB.DE>

Attachment: pgppVoEo6lN5X.pgp
Description: PGP signature


Reply to: