[Top][All Lists]

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

Re: vk_l4 -- CVS Setup

From: Jeroen Dekkers
Subject: Re: vk_l4 -- CVS Setup
Date: Wed, 24 Oct 2001 13:54:48 +0200
User-agent: Mutt/1.3.23i

On Wed, Oct 24, 2001 at 03:04:43AM +0200, Farid Hajji wrote:
> I've also forgot a directory:
>        doc/               # project documentation!

Hurd and documentation, that's new. :P

> > >    vk-l4/             # virtual kernel, l4-backend
> > > 
> > >    vk-l4/oskit/       # mixins w.r.t. the _newest_ OSKit from Utah!
> > 
> > What things do you expect would go into here? Wouldn't it be better to
> > have the full oskit sitting somewhere and just use it's headers and
> > libraries from that location?
> Well, consider the pager: We could use the OSKit LMM or other memory
> management libraries to build it. The parts of the OSKit that we'll use
> to build the pager would go here. We'll probably also need glue code
> from OSKit to drop in the driver framework from Michael. This code would
> also be "borrowed" from the complete OSKit sources and put here.
> The reason I'd prefer that we don't import the whole OSKit is, that it
> would be easier to compile only the components we need. Another reason
> is that we'll clearly see what we borrowed from OSKit, so that we won't
> have to worry about things breaking, when OSKit is substantially changed
> by their maintainers.
> I may be wrong regarding selective import of only what we need. Feedback?

From the experience I have with oskit-mach I can say you don't have to
worry about breaking things. The interfaces aren't changed most of the
time, so it shouldn't break. The best way to do it is just including the
oskit header files and link with the libraries. Everything you want to
change can be overriden. 

About which oskit libraries we should use, I think we should use a
library when we need one when writing a part of the system and not
choose what to use before writing anything.

> A real pager like UVM would need to:

What is UVM exactly and you have any documents describing how is works
and why it works that way?

> > >    vk-l4/nameserver/  # naming service (a.k.a. rendez-vous, 
> > > port-manager...)
> > 
> > Would this be used by all the personalities?
> Why not? There is obviously a need to locate ports (not in the Hurd sense!)
> for contacting the pager, the superdriver and other basic vk-l4 tasks.
> One way would be to hard-code the task/thread-IDs into header files
> and have the OS-personalities use them. This is obviously not desirable,
> because you can't extend/modify vk-l4 this way.
> Another way would be to hardcode just the nameserver's lookup task/thread-ID
> in include files and have
>   * the vk-l4 tasks  register with the nameserver
>   * the os-personalities query the nameserver for the other vk-l4 tasks.
> This is absolutely Hurd-neutral and can be used by all personalities.
> Please don't confuse vk-l4/nameserver/ with l4hurd/portserver/.

I don't know a nameserver is it the Right Thing to do. We already have
the file name space and the proc server. The original mach nameserver
was abandoned because it wasn't needed afaik. Could you tell us the
details of it and why it is needed?

Jeroen Dekkers
"all the _really_ interesting stuff will be going on in user space."
        --Linus Torvalds
"just say NO TO DRUGS, and maybe you won't end up like the Hurd people."
        --Linus Torvalds, "I was never a "big thinker""

Attachment: pgpUbYXwOeiQt.pgp
Description: PGP signature

reply via email to

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