[TUHS] SVR4 x86 -- Sources

Larry McVoy lm at bitmover.com
Wed Jul 20 10:42:26 AEST 2011


> There's both the STREAMS API (more properly XTI/TPI) and the STREAMS
> Kernel network processing paths. XTI/TPI have died by the wayside
> surplanted by the Sockets API, but the STREAMS kernel stuff is still
> very much part of Solaris. To me, it seemed like Sun never really gave
> all that it did for the streams kernel stuff back into SVR4, but alot
> of the networking code seemed to be an early draft of what Solaris did
> with it. Any SVR4 varients still ran with the streams networking kernel code.

This is correct, I'm intimately familiar with that STREAMS networking 
stack, it came from Lachman and I ported it twice, to the ETA 10 and
SCO.  If anyone cares, http://www.mcvoy.com/lm/sw.shar is a "streams
watch" package I wrote (and SCO shipped, at least for a while) that 
let you see the resources being used by the kernel for the networking
stack.

The Sun code was a purchase of Lachman's code.  That didn't last long
because of the terms of the purchase, then my memory is Sun did their
own stuff and then eventually contracted a rewrite out to the Mentat
folks.  If anyone cares, I just went canoeing with one the main 
networking engineers at Sun at the time and I can get the exact 
details.

The whole SVR4/STREAMS thing was a frigging mess, sockets were a much
superior model and they eventually came back.

> > Also as I understand it, SunOS was a BSD which had heaps of
> > development and original ideas put into it (shared libraries I think
> > is one example),
> 
> Yes SunOS was definately 4.xBSD and had lots of research and
> innovation I think. The big Sun Whitepaper book of research papers is 
> pretty interesting reading.

Shared libaries, loadable modules, VFS, NFS, mmap all came from Sun.

> >  but was discarded as a political decision because
> > AT&T had managed to convince most corporate customers that BSD was
> > merely a hack and SysV was the "real unix", so Sun decided to create
> > Solaris instead by licensing SysV as a starting point, I may have
> > things slightly backward so I would appreciate if anyone can confirm
> > this?

This is wrong.  Sun needed money and AT&T agreed to buy stock at over
market but the terms of the deal was that Sun had to dump SunOS and 
use SVR4 instead.  It was a horrible decision and one that I spent
almost a year fighting full time.  I took SunOS and removed all 
encumbered source from the kernel and had a kernel that booted and
ran almost all applications (there were some tty drivers that didn't
work for some 3rd party cards, stuff like that, but for 99% of the
stuff you couldn't tell it wasn't the regular SunOS).  I wrote up a
paper about all this, trying to get Sun to give that kernel away
as open source:

http://www.bitmover.com/lm/papers/srcos.html

> Sun and AT&T were partners developing SVR4 to some extent. Some of
> Sun's tech went into SVR4 (based on their 4BSD based SunOS). To me, as
> an outsider, it seemed Sun kept alot of tech to itself and rolled it
> into Solaris. 

Yup.

> But once Solaris actually became usable, it certainly did
> rock a lot more than SunOS on the hardware it was tweaked for.

SunOS would have worked fine and was a much, much, MUCH better starting
point.  We had it working on multi processors and the underlying code
would have been easier to make scale than that steaming pile of crap
that was SVR4.

If I had been successful getting SunOS out as open source, Linux wouldn't
exist, we'd all be running SunOS.  I tried.
-- 
---
Larry McVoy                lm at bitmover.com           http://www.bitkeeper.com



More information about the TUHS mailing list