LWN.net Logo

First FOSS OS?

First FOSS OS?

Posted Mar 21, 2007 17:27 UTC (Wed) by landley (guest, #6789)
In reply to: First FOSS OS? by anonymous1
Parent article: The road to freedom in the embedded world

> The general public hardly heard about Free Software or the freedoms.

Back in the 1970's there _was_ no proprietary software market to speak
of. Why? Because the unit volumes on the machines were too low to
support any companies. (Micro-soft was one of the first, and they were a
shoestring operation with three employees, one of which was part time and
one of which had a day job at HP. The _very_ first might have been
Digital Research, which was a one-man operation Gary Kildall ran out of
his living room to make and sell CP/M for the very first commodity
hardware platform, the S/100 Altair clones.)

In order to sell shrink-wrapped binary software, you need lots of the
same machine out in the wild to be potential customers. The PDP-8 was
the bestselling machine each year from its introduction until it lost the
title to the Apple II. In its ENTIRE PRODUCTION RUN the PDP-8 sold a
grand total of about 50,000 machines. That wasn't per-year, that was
total, ever.

http://www.faqs.org/faqs/dec-faq/pdp8/

In its first two years, the Apple II sold a combined total of 43,000
units (The Innovator's Dillema, page 135). When IBM introduced the PC as
an "Apple kiler" it planned to manufacture 250,000 units. That was going
to be the complete production run. It got that many _preorders_.
(Although the commodore 64 had significant unit volume during this period
as well, since they were going for the low margin high volume niche sold
retail through outlets like Sears.)

The first "killer app" was Visicalc for the Apple II, written in 1979.
This was the first shrinkwrapped binary software to sell on floppy disk
in any significant volume (say more than 50,000 copies).

The proprietary software industry emerged around 1980 because there were
now enough of the same machine out there to make selling shrink-wrapped
binary software a commercially viable option. Before that, the
proprietary software industry DIDN'T EXIST. You either had software
commissioned (hideously expensive), it came bundled with the hardware
(most OSes), or it was users exchanging programs they wrote. This was
NORMAL. The unusual thing about Unix wasn't that users traded changes to
it but that the OS was written in a high level language rather than
assembly. This meant it wasn't tied to a single piece of hardware the
way Stallman's precious ITS was (which died with the PDP-10, forcing him
to start over from scratch, and this time he picked something portable
and with an existing user community that was ALREADY used to patching the
source code of their OS, ala the Lions book). AT&T didn't try to
commercialize Unix until 1983, by which time it was about as old as Linux
is now.

In this context, the founding of the Free Software Foundation in 1983 was
the creation of a conservative reactionary movement to preserve a
vanishing status quo, aimed at resisting changes in the industry and
advocating a return to the glorious past. It's no accident that the 1984
book "Hackers" by Steven Levy writes about Stallman as "the last of the
hackers".

I repeat that the GPLv2 was great. It took several iterations to get it
right (the revised emacs license, gplv1, and then gplv2). But the GNU
project failed. Deal with it. Linux is the result of others acting
independently. (Linus was inspired by Andrew Tanenbaum's Minix which had
NOTHING to do with the GNU project.) Draping a GNU flag over Linux is
SILLY, if gcc hadn't been available Linus would have used the minix
compiler until he could write his own. (He DID write the front end of a
compiler a few years ago, for fun: it's called "sparse".) The Linux guys
maintained their own C library (up through libc5) before switching to
Ulrich Drepper's glibc fork (which was an independent fork and see
Ulrich's comments linked above for the backstory on that).

Linux is NOT a reincarnation of the GNU project. When the GNU project
died Linux salvaged some parts from the scrap, that's all.


(Log in to post comments)

Posted Mar 22, 2007 2:47 UTC (Thu) by GreyWizard (guest, #1026) [Link]

Micro-soft was one of the first, and they were a shoestring operation with three employees, one of which was part time and one of which had a day job at HP.

A Microsoft employee had a day job at HP? Which one? Are you sure you're not thinking of Apple computer and Woz?

Draping a GNU flag over Linux is SILLY

That's a matter of perspective. Personally, the software packages I rely on most are Bash, Emacs, GCC and GDB. Notice the pattern? I run these atop a Linux kernel at the moment, but draping a Linux flag over all that would be silly since I've also used FreeBSD, NetBSD, Solaris and even Microsoft Windows at times. The GNU project may not have become whatever you wish it had and there are certainly plenty of other important projects in the free software community, but it has not failed. GNU remains relevant to quite a few people. Deal with it.

Posted Mar 22, 2007 18:00 UTC (Thu) by landley (guest, #6789) [Link]

> A Microsoft employee had a day job at HP? Which one? Are you sure
> you're not thinking of Apple computer and Woz?

Ah, you're right. Paul Allen's day job for Microsoft's first year was at
MITS, as "associate director of software". Before that Paul Allen worked
at Honeywell, not HP. (Sorry, all my reference books are packed.)

> I've also used FreeBSD, NetBSD, Solaris and even Microsoft Windows at
> times.

I don't. I also use vi instead of Emacs, and I point out that Ubuntu has
replaced bash with dash as its' default #!/bin/sh in Edgy and Feisty
(although I actually object to this because dash is broken).

> The GNU project may not have become whatever you wish it had and there
> are certainly plenty of other important projects in the free software
> community, but it has not failed.

Unix won. MacOS X's Unix underpinnings are BSD, Linux was directly
inspired by Minix (Andrew Tanenbaum worked at Bell labs and describes the
history of Minix in more detail at http://www.cs.vu.nl/~ast/brown/), and
Solaris and *.BSD all trace their directly ancestry back to Berkeley and
Murray Hill.

The GNU project was one of a half-dozen independent rewrites of the basic
Unix ideas published in the ACM paper in 1974. DOS 2.0's divergence from
CP/M (subdirectories, replacing FCB with file handles, etc) was wholly
inspired by Unix (and Paul Allen's desire to promote Microsoft's Unix
port, Xenix). I once used a Unix interface for the Vax VMS
called "Eunice" (think "cygwin for the vax", only even more strange and
brittle). IBM got Unix95 certification for its' mainframes, and it
didn't do that because of GNU.

> GNU remains relevant to quite a few people.

I am not one of them.

The biggest boost GCC ever got was Sun's Ed Zander deciding to unbundle
the compiler from Sun's Unix and sell it as an add-on, for extra money.
(He did the same thing to the network stack.) It was a huge boost to
short-term revenues and a huge drag on market share in the long run.

Before that gcc was virtually unheard of, after that it became the
de-facto default compiler for Sun workstations. The FSF never understood
the importance of PC hardware, and didn't pay much attention to it back
when Linux started. (They were far more interested in 68k than x86, as
most old-school Unix types were. They bought into the "RISC will
overwhelm everything" rumour going around then, just as they bought into
the "Microkernels are one true way" fad. Linux succeeded because it was
NOT part of the FSF. The original "Cathedral" in the Cathedral and the
Bazaar was the FSF, not any proprietary software company.)

Posted Mar 22, 2007 18:07 UTC (Thu) by nix (subscriber, #2304) [Link]

You use vi over Emacs because of the *license*?!

Sheesh. Even RMS isn't remotely this rigid.

(Oh, and GCC was widely used and widely known in the embedded market long before Sun's unfortunate C compiler unbundling. Surely you know this, what with busybox's embedded penetration...)

Posted Mar 22, 2007 21:00 UTC (Thu) by landley (guest, #6789) [Link]

> You use vi over Emacs because of the *license*?!

No, I use vi over Emacs because learning Lisp never struck me as a
reasonable requirement for a text editor to impose on its' users. (I
don't recommend vi to other people, and I'd have stuck with Joe if it
wasn't so buggy. I still miss qedit under DOS. But vi is ubiquitous and
available.) I used to use microemacs on the Amiga, but microemacs isn't
ubiquitously available on systems I sit down at either, and the big
version's no substitute for it.

> Oh, and GCC was widely used and widely known in the embedded market
> long before Sun's unfortunate C compiler unbundling. Surely you know
> this, what with busybox's embedded penetration...

First I've heard of it. What would that have to do with BusyBox? (Let's
see, Busybox Dates back to 1999, depending on whether you want to count
the project from the abandoned Debian boot disk utility ala Red Hat's
nash, or from Eric Andersen reviving it as an embedded project. That
means Linux predates it by about 8 years, and the Sun thing predates
Linux.)

Seems somewhat unlikely, since up through the 1990's the most common
target of the embedded market, far and away, was the 8-bit Z80. I don't
think gcc even had a target for the 16-bit 8086 before
http://www.delorie.com/djgpp/16bit/gcc/ , do you have references?

Maybe you're referring to 68k, ala http://www.obviously.com/dice/ ?

According to
http://www.network-theory.co.uk/docs/gccintro/gccintro_4.... the first
release of gcc was in 1987. (The book "open sources" has more detail but
that sounds about right.) Peter Salus says that the unbundling had
happened (and users had time to react) by the end of 1990:
http://icims.csl.uiuc.edu/~lheal/doc/dgp/chapter10.html

I know 1990 is about when I first heard of it. Then again, I was looking
for compilers with source code at the time for a DOS project. I believe
I found something like five of them, all of which sucked in different
ways... The one I wound up paying the most attention to was an upgraded
version of the "Small C Compiler" for DOS, a variant of
http://en.wikipedia.org/wiki/Small-C

Rob

Using Emacs requires learning Lisp?

Posted Mar 23, 2007 18:27 UTC (Fri) by GreyWizard (guest, #1026) [Link]

No, I use vi over Emacs because learning Lisp never struck me as a reasonable requirement for a text editor to impose on its' users.

How does editing text with Emacs require learning Lisp? I'll admit that I do know Lisp but I don't often apply that to Emacs. Even when I do I'm experimenting or adding some custom feature, which is not normal use. I appreciate the light footprint and ubiquity of vi and I have no trouble accepting that many people like it better than Emacs, but I hope you have some reasons less silly than this one.

Using Emacs requires learning Lisp?

Posted Mar 26, 2007 12:53 UTC (Mon) by nix (subscriber, #2304) [Link]

Doing anything much with Emacs customization used to require learning Lisp, but this hasn't been true for perhaps a decade. One of the problems with long-lived projects is that they acquire reputations which they then drag around long after they are no longer accurate.

(In any case, it's not as if elisp is very hard to learn, at least not to the depth required to customize Emacs. I learnt that much of it in two hours when I was twelve from the emacs-lisp-intro...)

Sic transit GNU

Posted Mar 23, 2007 18:04 UTC (Fri) by GreyWizard (guest, #1026) [Link]

I also use vi instead of Emacs, and I point out that Ubuntu has replaced bash with dash as its' default #!/bin/sh in Edgy and Feisty (although I actually object to this because dash is broken).

So? As far as I can tell your position is not merely that it's *possible* to get by without this or that GNU component (that's clearly true) but that GNU failed and is irrelevant. Since a substantial number of people depend on Emacs, Bash and other GNU components on a day to day basis that can't be true. Noting that there are other people who don't seems to be just another way to say, "there are certainly plenty of other important projects in the free software community" which I said above.

Unix won.

Yes, obviously. But that's beside the point. The GNU project didn't set out rewrite Unix for technical reasons. Their goal was to ensure that a complete, free software operating system would be available. Distributions such as Fedora, Gentoo, Debian, Ubuntu and others may not be all things to all people (and yes, I know "Saint Ignutius" himself is unwilling to bless them) but GNU components remain a vital part of each and the free software philosophy articulated and promoted by RMS played a substantial role in making them what they are.

Spinning history to obscure this is not productive. You don't have to personally like RMS, to call the Linux based operating system on your computer GNU, to use the forthcoming GPLv3 as a license for your own work or otherwise accept any suggestion from the Free Software Foundation to appreciate the contributions they have made and continue to make to this community.

First FOSS OS?

Posted Mar 23, 2007 15:22 UTC (Fri) by vonbrand (subscriber, #4458) [Link]

To be totally accurate, libc5 for Linux was a early version of GNU libc, hacked up so it wasn't recognizable anymore (because the starting point was very sorely lacking abandonware; Linux needing a decent libc made GNU libc development (re)start in earnest).

Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds