l4-hurd
[Top][All Lists]
Advanced

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

vk_l4 -- CVS Setup


From: Ian Duggan
Subject: vk_l4 -- CVS Setup
Date: Tue, 23 Oct 2001 12:01:19 -0700

> Why not start along the TODO list, putting only additional (new)
> stuff to CVS, e.g. like this:

I'll start a TODO in CVS.

I'm also trying to understand what you are proposing here. It seems like
you are trying to abastract out a base system for all operating systems.
Isn't this what the oskit stuff is for? It seems to me that this project
would be more of gluing together a couple of existing projects (L4
kernel, oskit, the Hurd), rather than building a "virtual kernel" of
sorts, but let's explore this further.

>    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?

>    vk-l4/gcc/         # specs and other modifications to gcc, if needed.

I'm unfamiliar with what this would be. What is a gcc spec file? Would
we really need to modify gcc?

>    vk-l4/private/include  # includes, idls and libs used internally
>    vk-l4/private/idl      # by the vk-l4 components
>    vk-l4/private/lib      # not exported to OS personalities.

I understand this.

>    # Here only the public interfaces of vk-l4:
>    vk-l4/include/     # includes needed by vk-l4 users (OS personalities)
>    vk-l4/idl/         # IDL files (like our *.defs) used by OS personalities
>    vk-l4/lib/         # libraries used by vk-l4 based OS personalities

I think I understand this. This would be the layer used by the OS
personalities (hurd, bsd, linux). What would the *.def files be for
them?

>    # Now for the guts of VK/L4:
>    vk-l4/pager/       # our new general purpose L4 pager, probably UVM based.

Can we start with the sigma0 pager that comes with the various L4
implementations? Maybe I'm misunderstanding what it is for.

>    vk-l4/drivers/     # the driver framework Michael Hohmuth talked about
>    vk-l4/drivers/linux
>    vk-l4/drivers/linux/net
>    vk-l4/drivers/linux/block
>    [...]
>    vk-l4/drivers/freebsd
>    vk-l4/drivers/freebsd/net
>    vk-l4/drivers/freebsd/block

So these are l4 native drivers taken and converted from linux and
freebsd? The oskit has the drivers from linux 2.2.something. Wouldn't it
be better to find a way to use them in a pluggable fashion? Is that even
possible?

>    vk-l4/nameserver/  # naming service (a.k.a. rendez-vous, port-manager...)

Would this be used by all the personalities?

>    # Here come the OS personalities using VK/L4:
>    l4hurd/            # Changes for the Hurd multiserver w.r.t. savannah.
>    l4linux/           # Changes to L4Linux to adapt it to new vk-l4 framework
>    l4bsd/             # Anyone interested to port NetBSD to vk-l4? ;-)
>    l4<whatever>/      # some other OS personality using vk-l4
> 
> This way, we'd incrementally contribute code to a general purpose
> infrastructure on top of L4 upon which we could not only base the
> Hurd, but also other single servers (L4Linux, L4BSD<vaporware right now>,...)
> 
> What do you think?

It sounds like a nice idea if I am understanding it correctly. My only
question is if this is maybe biting off more than we can chew initially.
Would this distract from the initial goal of Hurd on L4?

-- Ian

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Ian Duggan                    address@hidden
                              http://www.ianduggan.net



reply via email to

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