Subject: Re: NetBSD-Mach?
To: None <port-mac68k@NetBSD.ORG>
From: Christian Kuhtz <kuhtz@ix.netcom.com>
List: port-mac68k
Date: 12/10/1996 00:26:19
I have my doubts that the world will ever understand what Mach really is, but  
I can try to help out ;-)...

On Tue, 10 Dec 1996 12:11:53 +0900, ken@net5.co.jp wrote:
> Actually, the original work of Mach MK done at CMU *is* based on
> 4.3BSD.  I haven't personally confirmed this, but I've heard that the
> device drivers were taken almost unchanged from 4.3BSD.

Some of the device drivers are taken or inspired by 4.3BSD.  That is correct.  
 I have seen the source many many times.

However, Mach-UX (single server Mach) is really two parts.  A Mach mk, which  
is indeed mostly developed by CMU, and a BSD4.3 server with lots of source  
from AT&T.  The latter is the reason why you most of the time need a source  
license in order to do any serious work with a usable Mach.  The Mach mk  
itself is pretty much free software (except for tiny pieces), however, the mk  
for itself is also unusable for humans because it is just that, a micro  
kernel.  The OS server is the BSD4.3 interface.

> Also, there was a group of people working to implement a Net/2 based
> BSD "server" called bnr2ss (which stands for "Berkeley Network
> software release 2 Single Server", I believe) circa 1993, when Mach3
> MK source was released somewhat freely.

Mach3 mk's have always been free (or I should say under CMU licensing).  Only  
the BSD Net/2 based OS server is not free.

The BSD Net/2 based OS server has had the same fate as the general BSD Net/2,  
in that AT&T had copyright claims on it and it is not freely distributable.

> I remember they were using
> NetBSD (0.8 or 0.9) as the porting platform.  I was on their mailing
> list back then, but I don't think I still keep the posts around.  I
> don't know whatever happened to those people, but I remember seeing
> the bnr2ss mailing list maintainer on one of the NetBSD mailing lists
> sometime ago (probably on current-users).  Sorry, I just can't
> remember his name.

Do you really mean bnr2ss or Lites?

> BTW, the term "single" server refers to the fact that it runs as a
> single threaded Mach task.  I'm not sure if Lites is a single server
> or not.  Or MkLinux for that matter.

Lites and mkLinux are single server.  There is no free port of Mach-US in  
either multithreaded service or emulation library release (yet).  Maybe I'll  
get some time soon this winter to finish my hacking on Mach-US.  (Yeah right)

btw: To reduce single server to single threaded Mach task OS server is not accurate.

> Well, I agree with Jason on NetBSD/mach not making much sense, but a
> NetBSD "server" on top of MK would make sense.  It should not be
> impossible to run NetBSD binaries on NetBSD-server, as UX server
> allowed 4.3BSD binaries to run on it.

NetBSD/mach is BS, because mach is no hardware architecture.  Hosting NetBSD  
on a Mach mk, however, makes a lot of sense, as the only portion being truely  
hardware dependant is tiny.  It's a blast to port Mach.  All the NetBSD/???  
would easily collapse into one piece.  Much of it might look like the current  
try to the uneducated eye, however, the fundamental difference is when you  
consider the additional functionality Mach brings into the picture.  Most UNIX  
like Mach OS servers utilize only a fraction of Mach's potential.  In fact,  
many consider UNIX OS servers on Mach mk's an inapproriate match.

It is very much possible to build a NetBSD OS server running on top of a Mach  
mk, a la Lites.  In addition, that would take all the worries about  
multiprocessing support for NetBSD away, since a Mach mk is very capable of  
multiprocessing, scales extremely well and once you got the mk running, the  
NetBSD OS server doesn't need much modification to run on it and take full  
advantage of the multiprocessor.  In fact, a NetBSD hosting Mach-UX or Mach-US  
(the latter having the tremendous advantage of being able to support multiple  
API's very easily; we could emulate other OS' exec formats and API much  
easier and with it being less of a hack than it currently is.)  would  
outperform NetBSD plus multiprocessor additions anytime due to the fundamental  
OS architecture design differences.

Regards,
--
Christian Kuhtz          kuhtz@ix.netcom.com - hm, ckuhtz@paranet.com - wk
Network/UNIX Specialist      BOYCOTT INTERNET SPAM <http://www.vix.com/spam
Paranet, Inc.                                      <http://www.paranet.com/