The STREAMS non-inclusion in Linux
Tzafrir Cohen
tzafrir at cohens.org.il
Wed Apr 20 08:43:05 IDT 2011
On Wed, Apr 20, 2011 at 08:32:29AM +0300, geoffrey mendelson wrote:
>
> On Apr 20, 2011, at 8:09 AM, Omer Zak wrote:
>
>> None of them has details about the reasons, which led Linux Kernel
>> developers to reject STREAMS. STREAMS was only vaguely described as
>> poorly-designed and resource-consuming.
>
> There were two competing implemtations of TCP/IP. UCB created sockets,
> which is sort of in the public domain. AT&T (I think they subcontracted
> BBN to actually do it) created streams.
>
> My guess is that streams is based on AT&T patents and was never reverse
> engineered.
>
> So UNIX systems based on SYS V had streams, while UNIX systems based on
> BSD had sockets. SYS V Release 3.2 which was the first combined release
> (AT&T Kernel, both SYS V and BSD user land) had both.
>
> I've never looked but AFAIK, MacOS which is the latest "real" UNIX has
> sockets but not streams.
Mac OS X has a part called XNU (which, unlike GNU and XINU, is not a
recursive acronym) which is originally based on the BSD kernel. You
would expect them to follow BSD and use sockets rather than streams.
Interestingly enough, Mac OS (the original one, which had nothing to do
with Unix) had an implementation of STREAMS. Which is why OSX was forced
to keep it as part of the emulation layer (alone). Or at least Wikipedia
says so:
http://en.wikipedia.org/wiki/STREAMS
--
Tzafrir Cohen | tzafrir at jabber.org | VIM is
http://tzafrir.org.il | | a Mutt's
tzafrir at cohens.org.il | | best
tzafrir at debian.org | | friend
More information about the Linux-il
mailing list