[comp.os.mach] OS kernel sources

stern@pyro.ei.dupont.com (Scott) (11/06/90)

A few weeks back, fsset@!bach.lerc.nasa.gov (Scott Townsend) wrote:
> What is necessary to get the 'bare' kernel and port it to your own hardware
> with your own system call interface (which might look like POSIX ;-)?

[Description of desire for a bare-bones kernel deleted]

> So, I don't need hardware manufacturer code license, I'll write the
> hardware interface code.  I don't need *NIX server code (though it would be
> nice & I'll probably support 'vanilla' I/O stuff)  I would like to have

[more stuff deleted]

> I'm posting since I suspect I'm not the only one in this situation, I hope
> it isn't considered a waste.

My situation is similar to Scott's. I have been watching this news group for
answers to his questions, and so far I've seen no responses (or maybe I
just dozed off for a bit). So, to re-iterate:

Is it possible to get some kind of source (minus the completely hardware
specific parts) to a Mach kernel for use in creating an operating 
system on a new hardware platform???? Just the bare bones - no 
proprietary/licenseable/costly/screwed-up system call interface, no 
monstrous pile of UNIX utilities, programs, and network software, 
NUTHIN' but the Plain Jane Vanilla Mach kernel (if such exists in any
form). 

                         Many Thanks in Advance,
                              -- Scott Sternloff 
                                 (stern@pyro.ei.dupont.com)

ian@sibyl.eleceng.ua.OZ (Ian Dall) (11/11/90)

In article <1990Nov5.215209.4489@pyro.ei.dupont.com> stern@pyro.ei.dupont.com (Scott) writes:
-A few weeks back, fsset@!bach.lerc.nasa.gov (Scott Townsend) wrote:
-> What is necessary to get the 'bare' kernel and port it to your own hardware
-> with your own system call interface (which might look like POSIX ;-)?
-
-[Description of desire for a bare-bones kernel deleted]
-
-> So, I don't need hardware manufacturer code license, I'll write the
-> hardware interface code.  I don't need *NIX server code (though it would be
-> nice & I'll probably support 'vanilla' I/O stuff)  I would like to have
-
-[more stuff deleted]
-
-> I'm posting since I suspect I'm not the only one in this situation, I hope
-> it isn't considered a waste.
-
-My situation is similar to Scott's. I have been watching this news group for
-answers to his questions, and so far I've seen no responses (or maybe I
-just dozed off for a bit). So, to re-iterate:
-
-Is it possible to get some kind of source (minus the completely hardware
-specific parts) to a Mach kernel for use in creating an operating 
-system on a new hardware platform???? Just the bare bones - no 
-proprietary/licenseable/costly/screwed-up system call interface, no 
-monstrous pile of UNIX utilities, programs, and network software, 
-NUTHIN' but the Plain Jane Vanilla Mach kernel (if such exists in any
-form). 

I'd like to ad my er "expression of interest". Well, the hardware
dependent bits for *one* configuration would be nice (as an example),
but I don't want AT&T code and I don't want to cause hassle with
distribution tapes, just something I can ftp..

-- 
Ian Dall     life (n). A sexually transmitted disease which afflicts
                       some people more severely than others.       

jxf@castor.cis.ksu.edu (Jerry Frain) (11/12/90)

In article <884@sibyl.eleceng.ua.OZ>, ian@sibyl.eleceng.ua.OZ (Ian Dall) writes:
> In article <1990Nov5.215209.4489@pyro.ei.dupont.com> stern@pyro.ei.dupont.com (Scott) writes:

[ ... ]

>> Is it possible to get some kind of source (minus the completely hardware
>> specific parts) to a Mach kernel for use in creating an operating 
>> system on a new hardware platform???? Just the bare bones - no 
>> proprietary/licenseable/costly/screwed-up system call interface, no 
>> monstrous pile of UNIX utilities, programs, and network software, 
>> NUTHIN' but the Plain Jane Vanilla Mach kernel (if such exists in any
>> form). 
 
> I'd like to ad my er "expression of interest". Well, the hardware
> dependent bits for *one* configuration would be nice (as an example),
> but I don't want AT&T code and I don't want to cause hassle with
> distribution tapes, just something I can ftp..

I, also, would like to add my support for the distribution of Mach
kernel as described above.

Any information on whether this can/will be done in the (relatively)
near future?

  --Jerry

--
Jerry Frain -- Systems Programmer               Kansas State University
                                        Department of Computing & Info Sciences
Internet : jxf@cis.ksu.edu                         Manhattan, Kansas
UUCP     : ...!rutgers!ksuvax1!jxf

tom@afthree.as.arizona.edu (Thomas J. Trebisky) (11/15/90)

Well, I thought I would add my "expression of interest" with regard to
making the sources for the Mach kernel available.  I have a virtual memory
68010 machine, waiting for a kernel port onto the bare metal.  Mach would
indeed be an attractive candidate, were it in the public domain, but alas --
a recent inquiry to cs.cmu.edu reveals that a 4.3BSD source license is
needed, because Mach is not clean, it incorporates BSD source code in the
kernel.  Perhaps this means a waiting game for folks like me (Is it not true
that the gnu project is also waiting for a "clean" Mach, at which time it
becomes a candidate for their kernel.)  But life is short, hence this appeal.

mib@churchy.ai.mit.edu (Michael I. Bushnell) (11/15/90)

In article <448@organpipe.UUCP> tom@afthree.as.arizona.edu (Thomas J. Trebisky) writes:

   Perhaps this means a waiting game for folks like me (Is it not true
   that the gnu project is also waiting for a "clean" Mach, at which
   time it becomes a candidate for their kernel.)  But life is short,
   hence this appeal.

Mach is composed of two large pieces.  The first is the microkernel,
and the second is the server.  The microkernel implements device
drivers, most of the vm system (but not actual paging), process
scheduling, and interprocess communication (IPC).  The machine
independent source to the microkernel is currently under the CMU
license agreement (more on that later).  To run the microkernel, you
also need a port to a specific platform.  All existing ports, with the
exception of that to the 386, use non-free code (often in device
drivers).

The server implements unix semantics: signals, networks, filesystems,
uid's and pid's, etc.  CMU's server is based on Unix and includes lots
of Unix code.  OSF's server is not Unix-based, but it is certainly not
free either.  The microkernel is not usable without some server to run
on top of it.  This is somewhat analagous to having an Xserver without
any utilities or libraries which use it.

The CMU license agreement (covering the microkernel, some programs
like an RPC generator, and a couple of libraries) specifies that all
users of the software must send improvements to CMU.  The FSF is
negotiating to make the CMU license agreement mutually acceptable to
CMU and the FSF.

To my knowledge, no one (including CMU) other than the FSF is
considering implementing a free server on top of the Mach microkernel.
--
    Michael I. Bushnell      \     This above all; to thine own self be true
LIBERTE, EGALITE, FRATERNITE  \    And it must follow, as the night the day,
   mike@unmvax.cs.unm.edu     /\   Thou canst not be false to any man.
        CARPE DIEM           /  \  Farewell:  my blessing season this in thee!

kupfer@sprite.berkeley.edu (Mike Kupfer) (11/15/90)

In article <MIB.90Nov14174402@churchy.ai.mit.edu> mib@churchy.ai.mit.edu (Michael I. Bushnell) writes:
> To my knowledge, no one (including CMU) other than the FSF is
> considering implementing a free server on top of the Mach microkernel.

Well, we (the Sprite group) are planning to put Sprite up on Mach.
Sprite is free.  Of course, we're just getting started.  Come back in
a few months.

(For those who haven't heard of Sprite before, its chief claims to
fame are a really great distributed file system and transparent
process migration.)

Mike Kupfer
kupfer@sprite.berkeley.edu

ken@gvax.cs.cornell.edu (Ken Birman) (11/15/90)

In article <1990Nov15.031101.23899@agate.berkeley.edu> kupfer@sprite.berkeley.edu (Mike Kupfer) writes:
>> To my knowledge, no one (including CMU) other than the FSF is
>> considering implementing a free server on top of the Mach microkernel.
>
>Well, we (the Sprite group) are planning to put Sprite up on Mach.

The ISIS system is also freely available under Mach.  Although the current
version isn't exactly a kernel server, we are starting a re-design effort
that will yield a kernalized ISIS over Mach sometime next year.  A version
of this will also be available to the public for free.

(ISIS is a toolkit for building fault-tolerant distributed programs).

-- Ken

Randall.Dean@CS.CMU.EDU (11/16/90)

> Excerpts from netnews.comp.os.mach: 14-Nov-90 Re: OS kernel sources
> Michael I. Bushnell@chur (1988)

> [ lots deleted ]

> To my knowledge, no one (including CMU) other than the FSF is
> considering implementing a free server on top of the Mach microkernel.
> --
>     Michael I. Bushnell      \     This above all; to thine own self be
> true
> LIBERTE, EGALITE, FRATERNITE  \    And it must follow, as the night the
> day,
>    mike@unmvax.cs.unm.edu     /\   Thou canst not be false to any man.
>         CARPE DIEM           /  \  Farewell:  my blessing season this in
> thee!


The current starting base the FSF is considering for the free
server was a FREE server written at CMU called Poe.  Poe is
a simple unix server that currently runs csh, edits, comiples,
boots other servers, etc.  It currently only writes files to
its own VM.  It has no network, X, socket, etc support.  It is
nowhere near distribution quality (it only has about 2 man months
of work into after all).  We use it as a bootstrapping device
for our single and multi server environments.  CMU not only
considerd it, we did it first :-)

ian@sibyl.eleceng.ua.OZ (Ian Dall) (11/19/90)

In article <YbEhdWK00hsQ9gcmtA@cs.cmu.edu> Randall.Dean@CS.CMU.EDU writes:
-> Excerpts from netnews.comp.os.mach: 14-Nov-90 Re: OS kernel sources
-> Michael I. Bushnell@chur (1988)
-> To my knowledge, no one (including CMU) other than the FSF is
-> considering implementing a free server on top of the Mach microkernel.
-The current starting base the FSF is considering for the free
-server was a FREE server written at CMU called Poe.  Poe is
-a simple unix server that currently runs csh, edits, comiples,
- CMU not only
-considerd it, we did it first :-)

Ah. So the micro-kernal is free of AT&T code (except some machine
dependent bits which need rewriting for each port anyway) and Poe is
free of AT&T code.  Granted Poe sounds like is is a bit short of being
a "product", but it sounds like a system of interest to hackers like
me! How do I get it? :-) It strikes me, the more people who have it,
the more people will work on it and the sooner a free usable system
will exist.

-- 
Ian Dall     life (n). A sexually transmitted disease which afflicts
                       some people more severely than others.       

Randall.Dean@CS.CMU.EDU (11/21/90)

There are a couple of good reasons I can give you for not letting Poe out
the door yet.  First, we have not come up with a good
copyright/disclaimer
notice that both CMU and FSF are happy with.  Second, the code needs a
little
more work before it is a reasonable platform for random people to start
dropping functionality into.  With the addition of a real file system and
networking code(Both available in BSD4.4), we would have such a platform.
I think it fair to say that once both of these things are done (either
by us or FSF), then making this code more widely available would make
sense