History of Unix, BSD, GNU, and Linux

First published — Jul 23, 2023
Last updated — May 23, 2024
#unix #licenses #bsd #gnu #linux #history

Origins and history of Unix. CTSS, BTS, Multics, ITS, Unix, C, BSD, Unix wars, Motif, CDE, GNU, Linux. AT&T, Bell Labs, CSRG, UCB, Sun Microsystems, Novell.

Article Collection

This article is part of the following series:

1. Unix

Table of Contents

Introduction

This article provides a good, conceptual understanding of the history of Unix, BSD, GNU, and Linux from the origins in the 1960s to today.

It focuses on practical, understandable parts. It is not overly long, but still mentions all important details.

Early History

Batch Processing

Early computers in the 1950s were capable of running one program at a time. User would arrive at the computer, load program and data (via punched paper cards and magnetic or paper tape), run it, and wait for outputs.

As computers became faster, preparing to run programs and later collecting their results started taking a large percentage of time. So programs called monitors, the precursors to operating systems, were developed to process series, or “batches”, of programs. Those batches were prepared in advance, saving available computer time for actual computation.

This method later became known as batch processing.

In practice, batch processing was inconvenient. It was not real-time, it required supplying both program code and data to process, and users typically didn’t have direct access to machines. They gave programs to operators who scheduled them on available computers and later handed back the results. Or, direct access was available, but only for a couple hours a day, while operators were off duty.

Software Licensing

In the 1950s and 1960s, software and compilers were delivered as part of hardware purchases without separate fees.

Source code allowed users to fix bugs, add new features, and, later, port programs to other operating systems and architectures. Such practice became a central element of the so-called hacker culture, as described in Steven Levy's book 'Hackers'.

The first example of free and open-source software is believed to have been the A-2 system, developed at the UNIVAC division of Remington Rand in 1953 and released to customers with source code. Customers were invited to send improvements back to UNIVAC.

Later, almost all IBM mainframe software was also distributed with source code.

Some university computer labs had a policy requiring that all programs installed on the computer had to come with published source code.

Computer manufacturers were also supportive of its customers forming user groups. IBM 701 and IBM 704 customers had SHARE user group founded in 1955 and DEC had DECUS user group founded in 1961. Into the 1970s there were a number of user groups formed to get users involved and facilitate the exchange of software.

Before Unix

With somewhat better availability and lower prices of computers, users wanted to replace batch processing with direct access to computers.

This was done using two different approaches. One approach was to build single-user microcomputers as cheaply as possible, disregarding their small memory and low performance, and sell them to hobbyists.

The other approach was to allow multiple users to share bigger, more capable machines. Those were mainframes and minicomputers. In the early 1960s the first advanced operating systems became available and they soon had time-sharing, multi-tasking, and multi-user characteristics.

Compatible Time-Sharing System (CTSS)

In 1961 at MIT, John McCarthy, Jack Dennis, and Fernando Corbató talked about allowing multiple computer users to behave as if they were the only user.

In November 1961, Corbató’s Compatible Time-Sharing System (CTSS) was the first such general purpose system, demonstrated at MIT on a modified IBM 709 computer.

“Compatible Time Sharing” referred to time sharing which was compatible with batch processing; the OS could support both at the same time.

Installations of early operating systems could be counted by hand. For more than 10 years, CTSS ran on only two machines at MIT, with some outside users connecting from California, South America, the University of Edinburgh, and the University of Oxford.

CTSS’ novel features are summarized in the Wikipedia article CTSS Features.

Berkeley Timesharing System (BTS)

Berkeley Timesharing System was a time-sharing operating system implemented between 1964 and 1967 at the University of California, Berkeley (UCB). It was the first commercial timesharing system which allowed general-purpose user programming.

Students who worked on the Berkeley Timesharing System included Charles P. Thacker, L. Peter Deutsch, and Butler Lampson.

Speaking of BTS’ features that influenced Unix, BTS consisted of a monitor (roughly an OS kernel) and an executive (roughly a command-line interface), fork() and exec() calls were separate, and the text editor QED was first implemented for BTS.

Multiplexed Information and Computing Service (Multics)

Multics was another early time-sharing operating system, inspired by CTSS and started in 1964 in Cambridge, Massachusetts. It was a cooperative project between MIT CSAIL's Project MAC, General Electric, and Bell Labs. (Bell Labs at the time was a subsidiary of AT&T and AT&T’s manufacturing and supply company called Western Electric.)

However, Multics was designed for dedicated hardware, and the overall design proved to be expensive and impractical.

Bell withdrew from the project after 5 years, in 1969, as it became clear that Multics would not be a working system in the short term. Shortly after, in 1970, General Electric sold its computer division to Honeywell. Honeywell offered Multics commercially with limited success.

Ken Thompson later described Multics as a project that tried to carry out research in not one but four different areas at the same time, and that was “overdesigned and overbuilt and over everything, close to unusable”.

Multics’ novel features are summarized in the Wikipedia article Multics Novel Ideas.

Incompatible Timesharing System (ITS)

Incompatible Timesharing System (ITS) was a time-sharing operating system started in 1967 and developed principally by the MIT AI Lab and MIT CSAIL Project MAC.

Its development was initiated by staff who disagreed with the direction taken by Project MAC’s Multics. The word “Incompatible” was chosen as a humorous complement to the MIT “Compatible” Time-Sharing System (CTSS).

ITS was written in assembly language for PDP-6 and later PDP-10 mainframes.

The wide-open philosophy of ITS and its collaborative online community were a further major influence on the hacker culture. They were also direct forerunners of the free and open-source software, open design, and Wiki movements.

ITS’ novel features are summarized in the Wikipedia article ITS Significant Technical Features.

CTSS, BTS, Multics, and ITS have influenced all modern operating systems since, from mainframes to microcomputers.

Unix

What is Unix?

Originally, Unix was a general-purpose time-sharing, multi-tasking, multi-user operating system started in 1968 at the AT&T Bell Labs research center. It included the Unix kernel and a set of utilities for the operating system to be useful. In the period from 1971 to 1989, Bell Labs published 10 releases of Unix, later named Research Unix.

But AT&T licensed Unix and Unix source code to other institutions and companies, resulting in a large number of conceptually similar, but separate operating systems, having names such as BSD, SunOS, Solaris, Ultrix, IRIX, HP-UX, Dell UNIX, AIX, DYNIX, Digital UNIX, NeXTSTEP, and macOS.

Apart from implementation, Unix has also been an incredibly powerful concept. It inspired creation of numerous Unix-like operating systems that follow the Unix philosophy, but do not contain any AT&T code. Most notable Unix-like operating systems are BSD releases after 1994, MINIX, and GNU/Linux.

Today, the name Unix collectively refers to all Unix and Unix-like systems. Their exact names and listing can be seen in the List of Unix systems.

Origins

Research companies like AT&T Bell Labs, Xerox PARC, and IBM Watson were created to conduct long-term research in areas and technologies that could become influential many years later.

In 1969, after a withdrawal from the expensive and failed project Multics, the last remaining Bell Labs’ Multics participants Ken Thompson, Dennis Ritchie, Joe Ossanna, and department head Doug McIlroy found themselves without a primary project to focus on, but remained interested in operating systems.

26-year old Thompson found a group of about 10 physically separate, rarely used, and by then obsolete DEC PDP-7 workstations. They were used as remote job entry stations for electric circuits design – data would be input into PDP-7s and sent via telephone lines to the main machine for computation. Thompson used the one at hand, whose configuration costed ~$250k in 1965, to get familiar with the PDP-7 architecture by porting games. Ritchie’s historical record The Evolution of the Unix Time-sharing System mentions a port of 2D game Space Travel which Thompson had previously written for a GE 635 machine, and Thompson's 2019 interview mentions a later 3D version of the game Spacewar!, which was originally a 2D game written by Steve Russell for a DEC PDP-1 minicomputer. Like the original Spacewar!, Thompson’s game was multi-player, played via telephone lines between any two machines in the group. The space was large; players sometimes exchanged coordinates so they could fly towards and find each other.

Also, that PDP-7 machine happened to have a high-performance disk. Thompson wrote code to maximize throughput from it, and then wrote the surrounding test and support utilities. He then realized he was three weeks away from a working operating system – an editor, assembler, and kernel were written in 1 week each. With an in-kernel shell for two stations (the localhost and a Model 33 teletype), the prototype Version 0 Unix came into existence.

The name Unix (originally Unics) is itself a pun on Multics. The U in Unix is rumored to stand for uniplexed as opposed to the multiplexed of Multics, further underscoring the designers’ rejections of Multics’ complexity in favor of a more straightforward and workable approach for smaller computers.

V0 Unix existed for about one year and ran on DEC PDP-7, two DEC PDP-9, and one DEC PDP-15 computer at Bell Labs. There is a video of V0 Unix running on a PDP-7 available from Living Computers: Museum + Labs.

As Bell Labs was not willing to fund another research in operating systems, the group’s request for a purchase of DEC PDP-10 or SDS Sigma 7 mainframe was not approved, and the work on Unix was initially without management support.

The group continued extending the implementation of this new operating system on PDP-7, and even though it was about ten times slower than other machines in the computer center, it was used by impressive names – Thompson, Ritchie, McIlroy, Robert Morris, and few others, two users at a time.

In early 1970, Thompson and Ritchie managed to get funding for a just-announced DEC PDP-11/20. The configuration ordered by the department costed about $65,000 at the time, which was a magnitude less than other proposals the group had submitted without success in the previous one or two years (although all were well within budget). So unlike for expensive mainframes, Unix was intended for, comparatively, more affordable minicomputers.

But the key to getting the request approved was not the amount. (Bell Labs was financed with 1% from tax on telephones and calls in the US, and employees were entitled to personal yearly budget in the amount equal to their yearly loaded salary. It was easy to combine 4 or 5 people and reach multi-million dollar budgets for projects.)

Rather, the key was was Joe Ossanna’s idea to involve the patents department. The department needed an adequate system for producing and managing patent applications. As no software was capable of fulfilling the requirements and also auto-formatting text, printing math symbols, and printing line numbers on pages, they were planning to purchase a specialized computer.

The Unix group proposed to do it in-house and, as Thompson says, “it was to save money, it wasn’t about operating systems (honest! :)), and it was for somebody else. It was a 3-way win impossible to say no to”. On a side note, these text processing needs were why Joe Ossanna wrote nroff and troff document processing systems very early on, and why Unix always had powerful text processing functions.

The project was a great success. A second PDP-11/20 was soon ordered to keep the research and patents work separate, and Unix also started spreading to various AT&T departments. As Dennis Ritchie wrote in The UNIX time-sharing system, “Unix contained a number of features very seldom offered even by larger systems”.

Unix was originally written in assembly language. As assembler is architecture-specific, Unix couldn’t be ported to other architectures without essentially rewriting it.

In 1972, DEC PDP-11/45 computer was released and Unix rewritten for it. It was the first hardware that was able to support Unix without obvious deficiencies and lacking features. Dennis Ritchie designed the C programming language to separate Unix from platform-specific implementation details.

In 1973, DEC PDP-11/40 computer was released and Unix ported to it. The Unix kernel was rewritten in C after three failed attempts, enabled by the addition of structs to the C language. Utilities were rewritten over the next couple years.

In 1975, DEC PDP-11/70 computer was released and Unix ported to it.

In 1977, Unix was ported to IBM System 360 Model 91 and 32-bit Interdata 7/32 and 8/32, the first platforms other than the original DEC PDP line.

In 1978, Brian Kernighan and Dennis Ritchie co-authored the book The C Programming Language, 1st edition.

AT&T / Bell Labs Unix Releases

Internally in Bell Labs, Unix did not have releases or versions; it was a continuously developed system.

When Doug McIlroy organized “Unix Programmer’s Manuals” to be written for the PDP-11 version, editions of manual became versions of Unix they were describing.

The editions of Unix Programmer’s Manuals were:

Early Licensing and Distribution, from ~1970 to ~1980

The history and evolution of Unix cannot be understood without an insight into its licensing.

In 1949, US Department of Justice filed suit against AT&T and its subsidiary Western Electric, claiming that companies were monopolies acting “in restraint of trade”.

In 1956, by an antitrust consent decree the companies were prohibited from branching into areas other than those used in providing telephone, telegraph, and common carrier communications services, and AT&T was also required to reveal and license patents it held.

As Peter H. Salus wrote in his book The Daemon, the GNU & the Penguin, “no one could have foreseen the problems that this consent decree would entail”, referring to the far-reaching impact this decision had on Unix licensing 20 years later.

In October 1973, Dennis Ritchie and Ken Thompson visited the new IBM Research Center at Yorktown Heights in Hudson Valley to deliver the mentioned first paper on Unix at the Symposium on Operating System Principles (SOSP). The audience asked for copies of the new system, which raised a question – was a computer operating system part of “common carrier communications services”, and was AT&T required to distribute Unix?

Since Unix wasn’t related to communications services, the decision of corporate lawyers was that Bell Labs should distribute Unix to academic and research institutions for free, at the cost of media plus shipping, which was altogether $150. The policy was “no advertising, no support, no bug fixes, and payment in advance”.

Licensing was organized through Western Electric, and within a few months several dozen institutions requested Unix. (But note that, although without cost, the distribution was not Free Software because it did not come with the permission to redistribute software or its modified versions.)

In 1974, unrelated to Unix, US DOJ filed another antitrust case against AT&T in United States v. AT&T.

In early 1974, Mel Ferentz and Lou Katz organized a meeting of Unix users in New York. The agenda was simple: reports of Unix installations and purposes; lunch; “Ken Thompson speaks!”; Unix hints; DEC hints; open discussion. There were 20 to 30 participants.

In 1975, those meetings turned into a non-profit organization “UNIX Users Group”. In 1977, the group changed name to USENIX: The Advanced Computing Systems Association, after a letter from a lawyer stating that AT&T had not granted permission to use “UNIX” in “UNIX Users Group”. In the same year and for the same reason, UNIX News newsletter was renamed to ;Login:.

When it became clear that Unix was popular, AT&T wanted to profit from it. But first they were not allowed to do so due to antitrust lawsuits, and later after 1982-1984 they didn’t know how to do it successfully. As a result, the history of traditional Unix became inseparable from the effects that AT&T’s increasingly strict, expensive, and conflicting licensing had on it from roughly 1977-1978 onwards.

Berkeley Software Distribution (BSD) Unix

In 1973, Bob Fabry from University of California, Berkeley (UCB), attended the mentioned Ritchie and Thompson’s SOSP talk.

In 1974, AT&T’s Unix source code and license arrived to UCB.

In 1975, Ken Thompson took a sabbatical from Bell Labs and came to Berkeley as a visiting professor. He helped install Version 6 Unix. In parallel, students doing operating systems research modified and extended Unix.

Other universities became interested in software from Berkeley, and so in 1977-1978 Bill Joy, a graduate student, started compiling the first Berkeley Software Distribution (1BSD).

In 1978, 1BSD was released as an addon for Version 6 Unix. About thirty copies were sent out.

Later in 1978, 2BSD was released. Over 70 copies were sent out.

That was being done with AT&T’s approval, and because BSD contained copyrighted AT&T Unix source code, it was only available to organizations who already had source code license for Unix from AT&T.

Thompson, Ritchie, and Steve Johnson were unhappy with the treatment they were receiving from DEC, and have refused DEC’s offer to port Unix to DEC VAX 32-bit machines. So DEC turned to another group inside Bell Labs, at Holmdel, who based their port on V7 Unix and called it Unix/32V. Unix/32V did not have support for virtual memory in VAX, but still the OS was requested by about six universities, and AT&T approved it to be sent to one – the UCB.

At the end of 1978, before official release, Unix/32V arrived to UCB.

In 1979, 3BSD was released, and since it was based on Unix/32V and many components were rewritten and improved for 32-bit, including adding the virtual memory support, it became a complete system, rather than an addon.

In 1979-1980, DARPA was interested in an enhanced and supported version of already-portable 3BSD for their use. Fabry made a proposal to DARPA and Bolt Beranek Newman (BBN) (the developers of ARPANet) and won an 18-month contract.

As part of the contract, the Computer Systems Research Group (CSRG) at UCB was formed, and it continued working on BSD.

A more complete history of BSD Unix can be read in the History of the Berkeley Software Distribution or in the article The Berkeley Software Distribution, but in summary, the following BSD releases could be mentioned as significant:

For PDP-11:

  • 2.8.1BSD - the version of V7 Unix (initially slower than V6) that was improved by users and announced at USENIX in 1982

  • 2.11BSD - the last BSD release for PDP-11, from 1991, still maintained with patches available on TUHS.ORG - 2.11BSD - Patches

For 32-bit DEC VAX and later computers:

  • 3BSD - derived from Unix/32V, with support for virtual memory, from 1979

  • 4BSD - vastly improved 3BSD, from 1980, and de-facto standard Unix for VAX before AT&T’s release of System III. (Users would get a Unix/32V license from AT&T and then obtain 4BSD)

  • 4.1cBSD - version tuned for performance by Bill Joy, from 1983. It ran some benchmarks as fast as the then-predominant OS for DEC VAX, the DEC VMS. 4.1cBSD became the basis for DEC Ultrix, SunOS, and AT&T’s Version 8 Unix

  • 4.2BSD - the first BSD released under the leadership of Mike Karels and Marshall Kirk McKusick, from 1983, after Bill Joy left in 1982 to co-found Sun Microsystems

  • 4.4BSD-Lite - the first BSD release free of AT&T’s intellectual property, from 1994

  • SunOS 4.1.4 - the last release of Sun Microsystems’ OS based on BSD, from 1994. (Later versions were based on AT&T System V Release 4 (SVR4) and renamed Solaris)

  • 4.4BSD-Lite2 - the second BSD release free of AT&T’s intellectual property, from June 1995, and also the last one from UCB, because CSRG was disbanded shortly after

Unix and ARPANet (the Internet)

By 1975, ARPANet contained 60 nodes and was soon to become the Internet. In May 1975, Steve Holmgren’s RFC 681 “Network UNIX” appeared, stating:

The Unix time-sharing system presents several interesting capabilities as an ARPA network mini-host. It offers powerful local processing facilities in terms of user programs, several compilers, an editor based on Qed, a versatile document preparation system, and an efficient file system featuring sophisticated access control, mountable and de-mountable volumes, and a unified treatment of peripherals as special files.

The result was that Internet started running on Unix. The protocols were also in tune with the Unix philosophy. Anyone running Unix had accessible source code, and there were true communication and interoperability. Unix was used throughout the world – Japan and Australia, most of Europe, and North America.

The number of nodes on ARPANet over the years grew as follows:

  • 1976: 63

  • 1981: >200

  • 1982: 235

  • 1983: 562

  • 1984: 1024

  • 1986: 2308

  • 1987: 28174

  • 1992: 727000

John Lions at UNSW, Australia

In 1975, John Lions at the Australian University of New South Wales (UNSW) became interested in Unix after reading Thompson and Ritchie’s CACM paper, and his institution soon obtained Unix source code.

Lions wanted to use Unix in teaching operating systems, but there were no textbooks for Unix. The existing Unix documentation did not discuss its internals or operating system design.

In 1976, he wrote a A Commentary on the UNIX Operating System for Version 6 Unix with source code included (9073 lines of code at the time). He received permission from AT&T to print out the code and commentary for instructional purposes.

In March 1977, UNIX News announced the availability of the book to licensees, together with a note by Mel Ferentz: “Ken Thompson has seen the first version of the book and reports that it is a good job”. The book became as popular as Unix itself.

Lions could not keep up with demand and had reached out to AT&T to secure the book’s publishing in sufficient quantities.

AT&T’s attention was drawn to the book, and after announcements that further orders should be placed with Bell Laboratories, AT&T changed their mind and already in 1978 announced that books were no longer available.

As a result, over the next two decades John Lions’ book became the most copied book in computing history.

The book was finally authorized and republished in 1996, containing source code for 20 years old Version 6 Unix, source code for other ancient Unix versions, and commentaries from 9 additional people.

Later Licensing, from ~1980 onwards

There were a number of factors contributing to the eventual change in Unix licensing:

  • As software became more complex, its production costs relative to hardware started increasing

  • In the United States vs. IBM antitrust suit, filed 17 January 1969, the U.S. government charged that software bundled with hardware was anticompetitive

  • Software became copyrightable in the US in 1974. That, plus later court decisions such as Apple v. Franklin in 1983 for object code, gave computer programs the copyright status of literary works. This started the closed-source software business model

  • In the ’80s, computer vendors and software-only companies began routinely charging for software licenses, marketing software as “Program Products” and imposing legal restrictions through copyrights, trademarks, and leasing contracts

  • In 1983, IBM made a policy of no longer distributing source code with purchased software

And apart from global events, there were changes at AT&T as well:

In 1979, AT&T announced Version 7 Unix at USENIX, and the new academic/research license no longer permitted classroom use, with retroactive effect.

In 1981-2, AT&T released System III, a commercialized Version 7 Unix plus additions, without source code. Customers who did not accept the new terms could still obtain V7 Unix license and source code from Western Electric, and then with a valid license optionally also obtain a BSD release with source code.

In 1982 came the break up of AT&T’s telecommunications monopoly. Effective as of Jan 1, 1984, AT&T was free from the earlier 1956 and 1974 antitrust lawsuits, and was allowed to establish an unregulated division to sell computer hardware and software.

Simultaneously, as Unix became more widespread and AT&T was looking to increase profits from its sales, free distribution model was stopped and users were charged for system patches. As it was difficult to switch to another system, most users paid the commercial license.

On a side note, in 1987, MINIX was developed in response to the change in licensing with V7 Unix, to be able to continue teaching Unix in classes.

Unix Fragmentation

Separately from the mainline Research Unix codebase, several groups within AT&T were maintaining their internal forks of Unix. Those were mostly based on V5, V6, and V7 Unix, and included branches named USG UNIX (first released in 1973), CB UNIX (1975), and PWB/UNIX (1977). There was also a real-time branch of Unix available for telephone switching, called MERT. As mentioned, this fragmentation was internal to AT&T.

The early public fragmentation happened when AT&T’s original Unix source diverged into three main groups:

  • Berkeley Software Distribution (BSD), based on V6 Unix and first released in 1978, with source code

  • AT&T’s System III, a commercialized unification of V7 Unix, USG UNIX, CB UNIX, PWB/UNIX, and other additions. It was first released in 1981, without source code

  • AT&T’s System V, a successor to System III, intended to further standardize and unify Unix, CB Unix, and BSD, first released in 1983, without source code

But as AT&T was licensing Unix source to outside parties, it produced an even bigger number of academic and commercial Unix variants offered by vendors. Licensees included the mentioned University of California at Berkeley, as well as companies like Sun Microsystems, IBM, Hewlett Packard, Digital Equipment Corporation (DEC), Silicon Graphics, Dell, and numerous others. Their releases to most customers did not come with source code because AT&T’s terms for binary-only licenses were significantly cheaper.

Unix, originally a single codebase with available source code, has become divided into a number of different, separate, increasingly incompatible, and closed-source offerings, all coexisting, claiming authority, and planning to take over the market.

Unix Wars

As mentioned, AT&T was unsure how to best profit from Unix. Even before they were freed from antitrust lawsuits in 1984 and allowed to operate a computer business, they tried to somehow commercialize Unix through their successive efforts Unix Support Group (USG) (1973), Unix System Development Laboratory (USDL) (1983), and AT&T Information Systems (ATTIS) (1984).

Starting with 1984, further distancing between Unix vendors and grouping into competing camps happened when:

  • In 1984, AT&T Computer Systems (AT&T-CS) division inherited Unix System V and positioned itself as a direct commercial competitor to existing Unix vendors

  • In 1985, AT&T-CS issued its System V Interface Definition (SVID), requiring vendors calling their products “System V” to conform to it

  • In 1987, European Unix vendors Bull, ICL, Olivetti, Siemens, and Nixdorf created X/Open group to promote open standards and define a single specification for all operating systems derived from Unix

  • In 1988, AT&T announced a 3-year plan to acquire up to 20% stake in Sun Microsystems, “one of Silicon Valley’s most promising computer makers”

  • In 1988, IEEE Institute published a separate, vendor-neutral Portable Operating System Interface (POSIX) standard for software compatibility between variants of operating systems. It was a compromise between System V and BSD, and to some extent a subset of SVID

  • In 1988, AT&T and Sun Microsystems (who was until then a BSD-based vendor) released their Unix System V Release 4, unifying System V Release 3, Xenix, BSD, and SunOS features

  • In 1988, AT&T and Sun Microsystems released their Open Look GUI

  • In 1988, a group of 7 vendors DEC, Apollo, Bull, HP, IBM, Siemens, and Nixdorf created Open Software Foundation (OSF) to protect themselves from the cooperation between AT&T and Sun Microsystems, to combine code from their own System V Release 3 derivatives, and ultimately to produce a Unix OS free of AT&T’s intellectual property

  • In 1988, AT&T and Sun Microsystems formalized their association as Unix International (UI), to counter the establishment of OSF

  • In 1989, OSF released their Motif GUI

  • In 1989, AT&T, separately from its research Unix group in Murray Hill, and in cooperation with Novell and its Unix International, created Unix System Laboratories (USL) to make its Unix business more profitable. AT&T transferred all its US-based Unix assets to USL, including the System V copyright and Unix trademark. Sun bought a stake in USL

  • In 1990, OSF released their first reference Unix implementation, OSF/1

  • In 1991, partly prompted by the industry-wide recession, but also as a sort of giving up, and possibly even based on predicting the downfall of Sun, AT&T sold its stake in Sun Microsystems, “ending one of the most financially rewarding and technology-advancing relationships in the computer industry”

Due to divergence, intellectual property, licensing issues, personal and corporate conflicts, commercial rivalry, and inability to agree on a Unix standard, the period from ~1985 to ~1995 became collectively known as the period of Unix wars.

Outcomes of Unix Wars

Most of the efforts created during Unix wars ultimately had influential and valuable outcomes:

POSIX was in 1988 included in NIST FIPS 151, requiring POSIX compliance for all Unixes utilized in the US government, making POSIX an industry standard relevant to this day.

X/Open was expanded by 1990 to include AT&T, DEC, HP, Sun, Unisys, NCR, Philips, Nokia, Prime, Apollo, Fujitsu, Hitachi, and NEC, and also both OSF and Unix International. In 1994 X/Open managed to publish the Single Unix Specification (SUS), which in its core included the POSIX standard. X/Open was merged with OSF in 1996 to form The Open Group.

Open Software Foundation (OSF)’s OSF/1 operating system was released for various platforms to demonstrate portability and vendor neutrality. Components included the CMU Mach 2.5 microkernel, IBM journal filesystem, BSD networking code Net/1, native virtual memory management, Motif, and Distributed Computing Environment (DCE). Other software vendors also licensed OSF/1, including Apple. Parts of OSF/1 are contained in so many versions of Unix that it may have been the most widely deployed Unix product.

Unix International (UI), in cooperation with OSF, announced in 1993 the Common Open Software Environment (COSE) initiative. Apart from standardization effort, COSE’s most notable product released in the same year was the industry-standard Common Desktop Environment (CDE) desktop, based on the Motif toolkit. UI and COSE were merged in 1994 into OSF, and then under OSF in 1996 into the mentioned Open Group.

Unix System Laboratories (USL) and all its Unix assets were in 1992 bought by Novell, leading to somewhat ignorant press headlines that “Novell bought Unix”. Novell’s acquisition never really paid off and in 1995 Novell resold some assets to Santa Cruz Operation (SCO), a vendor selling Unix variants for Intel x86 processors. Both USL and SCO indulged in lawsuits, to the detriment of Unix.

Culmination of Unix Wars

But the last big event and a culmination of Unix wars was USL v. BSDi, a 1992 lawsuit filed by AT&T’s USL against Berkeley Software Design, Inc. (BSDi).

BSDi was a privately-owned company, established in 1991 by some members of the original CSRG group at Berkeley and others, including for example Richard L. 'Rick' Adams, Jr., who was the founder of UUNET, at one point the world’s largest Internet Service Provider (ISP).

The events leading to the lawsuit were as follows:

As mentioned, CSRG at Berkeley was distributing BSD since 1978, with AT&T’s approval, to interested parties who themselves had a valid Unix source code license from AT&T.

Ten years later, in 1988, since AT&T’s source code licenses had become expensive (up to $160K in 2023’s money?) and Internet was growing, people expressed interest in obtaining networking code that’d be developed outside of AT&T and not be subject to AT&T’s licensing.

CSRG audited the source code of their BSD TCP/IP stack and in 1989 released it to the general public as “Net/1”, under a free and permissive BSD license.

In 1991, after plans were announced to close CSRG, and following continuous Keith Bostic’s initiative that started in 1986, CSRG made the final effort to remove all remaining AT&T code in BSD and replace it with their own implementation. In June 1991, they made another public release under the BSD license, Net/2. Net/2 was a nearly complete Unix-like system, and CSRG believed it to not contain any AT&T’s intellectual property.

Berkeley Software Design, Inc. (BSDi) obtained the source of Net/2, filled in the missing pieces, and ported it to the Intel i386 computer architecture. By the end of 1991, BSDi started selling the resulting BSD/386 operating system which could be ordered through a memorable telephone number “1-800-ITS-UNIX”. That usurped AT&T, who did not agree with the telephone number containing “UNIX” nor believed that BSDi’s BSD/386 was free of AT&T’s intellectual property, in particular trade secrets. USL filed a lawsuit against BSDi in April 1992, and later also included the University in it, requesting sales and distribution of both BSD/386 and Net/2 to stop until the case is resolved.

In April 1993, as the judge did not grant preliminary injunction against BSDi, BSD/386 was shipping with source code costing $995, compared to over $20k for AT&T’s Unix System V.

Later in 1993, the University came to help and filed a countersuit against USL, claiming that USL had failed to credit the University for the use of BSD code in System V, as required by the software license contract. The University demanded that USL be forced to reprint all their documentation with the appropriate due credit added, to notify all their licensees of their oversight, and to run full-page advertisements in major publications such as The Wall Street Journal and Fortune magazine, informing the public of their omission.

Soon after the countersuit, USL was purchased by Novell.

In 1994, after the judge expressed doubt in the validity of USL’s intellectual property, and with Novell’s CEO Ray Noorda favoring a settlement, the case was settled out of court, with Novell and UCB agreeing not to litigate further over either BSD or users or distributors of future releases. Interestingly, the full text of the USL-UCB settlement remained secret until 2004.

As part of the settlement, of 18,000 files included in BSD, 3 had to be removed, and 70 modified to show USL copyright notice. The first subsequent and free BSD release was 4.4BSD-Lite, released in March 1994.

By 1995, BSD/386 became the main Internet and datacenter OS. By the end of 2003, due to competition from open source BSDs and GNU/Linux, BSD/386 (in the meantime renamed to BSD/OS) was discontinued.

A Summary of Mistakes

Starting with 1990 onwards, almost all traditional Unix vendors have died out, either directly or have been bought and diluted in companies with no Unix heritage.

But their demise did not come overnight, as a mishap. It was a result of stubborn and insistently wrong decision making that was going on for a decade or more.

As mentioned earlier, most of the efforts created during Unix wars ultimately had influential and valuable outcomes. It is unfortunate that involved parties did not reconcile or start cooperating 5 to 10 years earlier.

But there were other problems.

Unix vendors were 5 to 10 years late in providing Unix on hardware that was, price-wise, accessible to the general public. Arguably, they never provided this option, turning Unix into a niche.

Unix vendors were 5 to 10 years late in reacting to an obvious industry trend – the emergence of feeble microcomputers and PCs, whose popularity and agility far surpassed Unix vendors’, made their business models obsolete, and eventually starved them of income and influence needed to respond.

There were people who understood the direction of the market. For example, Larry McVoy and others warned Sun Microsystems in a 1993 letter titled The Sourceware Operating System Proposal, but it did not have much effect. Besides, even that letter was authored 8 years after the 1985 release of i386 CPU, the first PC CPU reasonable enough to run Unix.

(Sun Microsystems did eventually try to open-source Solaris in 2008, but without drivers for the diverse PC hardware and after Solaris had already switched to using the GNOME desktop. This effort was 10 to 15 years late to begin with, and was discontinued two years later, immediately after the acquisition of Sun Microsystems by Oracle Corporation.)

Another big, missed opportunity in the ’90s and 2000s was related to graphical components Motif and Common Desktop Environment (CDE). Motif and CDE had universal support and were arguably, alongside Unix itself, its flagship components. Since much of early software running on GNU/Linux was ported from Unix, lack of Motif and CDE were significant showstoppers in porting GUI applications and having an industry-standard desktop. That did not only slow down the adoption of Unix-like GNU/Linux, but it also deprived the shrinking Unix and Motif/CDE groups of a completely new, massive market and community of users and contributions.

The lack of Motif was particularly frustrating. A free software project called LessTif tried to implement a replacement, but never quite succeeded. Motif and CDE were eventually released as free software, but only in 2012, after they have already lost all relevance and acquired so much of an outdated look and hatred for not being available that people have buried them together with the dinosaurs. Their release as free software was 10 to 20 years late.

Significant for the fate of traditional Unix was also the USL v. BSDi lawsuit. It delayed BSD from 1992 to 1994, the years important for entering the general PC market, and it also once again undesirably brought Unix licensing into the spotlight.

Given the heavy burden of practically everything related to old-school Unix – hardware, software, pricing, licensing, politics, elitism, and closed source – maybe it is exactly just that all those variants are now relics of the past.

But, as a concept, Unix has defined all computing that we know to this day and continues to thrive free and receive enhancements like never before under the umbrellas of GNU/Linux and BSD.

After Unix

Plan9 and Inferno

After 10th edition Unix in 1989, Bell Labs’ staff went back to doing more operating systems research work.

In 1992 and 1996 they produced two more operating systems, Plan 9 and Inferno.

Some of their concepts propagated back to Unix and general computing, such as the proc filesystem, clone/rfork syscall, UTF-8, namespaces, compositing, xrandr, and the 9P protocol.

But the operating systems themselves did not gain traction. They are mentioned only for completeness.

GNU - GNU’s Not Unix

In 1971, Richard Stallman, a freshman at Harvard, began working for Russell Noftsker at the MIT Artificial Intelligence Lab. His job was to develop and improve the ITS operating system used by the Lab.

Work and research at the Lab were being done in the same technical, social, and ethical hacker culture that was present in computing from its beginnings in the 1950s into the 1970s.

In 1980, Noftsker and his group that separated from MIT formed Symbolics Inc. to design and manufacture Lisp machines, single-user computers optimized to run the programming language Lisp. Symbolics hired 14 MIT AI Lab staff, no longer visited there, and did not share the code of their first edition in 1982. Stallman made a different, parallel implementation to prevent the company from gaining a monopoly, and shared the work with others in the continued “spirit of scientific collaboration and openness”.

Also in 1982, the AI Lab bought a new PDP-10 and its administrators decided to use Digital’s non-free timesharing system TOPS-20 instead of ITS. The new OS required signing a nondisclosure agreement even for binaries, which made any kind of sharing or collaborative improvements impossible.

Finally, Stallman had previously modified the Lab’s printer driver to notify owners of active print jobs when paper got jammed. When Xerox donated a high-speed laser printer to the Lab and the same modification was necessary, Stallman surprisingly found no driver source code available, and a person who had it refused to share it due to a non-disclosure agreement (NDA).

Stallman was in total opposition of non-disclosure agreements, new licensing terms, increasing incompatibilities between vendors, lack of source code, and loss of user freedoms. To him, “the idea of proprietary software was antisocial, unethical, and simply wrong, dividing the public and keeping users helpless”.

To overturn the situation, Stallman made a definite decision to create a Unix-like system, but replace all components of Unix with Free Software (“Free” as in freedom).

Free Software refers to software that users have the freedom to run in any environment and for any purpose, as well as study, share, and modify it, and distribute their modified versions. Computer programs are deemed “free” if they give end users complete control over their software and, subsequently, over their devices.

In 1983, Stallman announced the GNU project on “net.unix-wizards” and “net.usoft” Usenet newsgroups. The name “GNU” was chosen as an acronym for “GNU’s Not Unix”.

In 1984, he resigned from MIT, so that MIT could not claim copyright over his work on GNU software. But thanks to Patrick Henry Winston, director of the MIT AI Lab from 1972 to 1997, Stallman continued to have access to office, lab space, and computing facilities.

In January 1984, software development for the GNU operating system began. In 1984 and 1985, the GNU Emacs text editor started being usable and was available for download on Stallman’s computer prep.ai.mit.edu via FTP. People who were not on the Internet could order a physical tape from Stallman for a fee of $150. That became a free software distribution business and a precursor to companies that today distribute entire GNU/Linux-based systems.

By mid-1984, GNU already had an impressive collection of software.

In October 1985, the Free Software Foundation (FSF) was founded to support the free software movement, employ software developers to write free software for the GNU Project, and work on legal and structural elements of free software.

In March 1985, the GNU Manifesto call-to-action was popularized after publishing in Dr. Dobb’s Journal of Software Tools. Its text is available in The GNU Manifesto.

In February 1986, the Free Software Definition was published. Its text is available in What is Free Software?.

In February 1989, the GNU General Public License (GPL) was published. Its text is available in GNU General Public License.

Starting with GNU Emacs and GNU Compiler Collection (GCC), by the early 1990s numerous GNU programs became de-facto standard and, thanks to their quality, free license, unhindered development, and better portability and support, quickly replaced their obsolete Unix counterparts.

Linux

At the time of the first Linux release in 1991, the circumstances were as follows:

  • In 1983, Stallman created The GNU Project. GNU had produced almost everything needed for a complete operating system, but the intended kernel GNU Hurd wasn’t ready

  • In 1985, Intel released 80386, the first x86 CPU that had a 32-bit instruction set and a memory management unit (MMU) with paging

  • In 1986, Maurice J. Bach released The Design of the Unix Operating System. The book covered the System V Release 2 kernel and some new features from System V Release 3 and BSD

  • In 1987, MINIX was released as a Unix-like system for academic use. But Minix was 16-bit and, although source code was available, the license prevented modification and redistribution

  • Any Unixes running on PCs were too expensive

  • And, the open source BSD for PCs, 386BSD, was not yet available; it only became available in March 1992

In July 1991, at 21 years of age, Linus Torvalds announced the first version of a Unix-like kernel named Linux.

Linux did not use any Unix code and was, like GNU, free from Unix’ architectural and legal problems.

As Torvalds was unable to find POSIX documentation for system calls, he modeled them after references in his university’s SunOS documentation.

In 1992, Orest Zborowski ported the standard Unix GUI framework, X Window System (X11), to Linux. He made a good decision not to adapt X to Linux, but to make Linux more System V-like, to be able to compile X with as little modification as possible. The improvements and the availability of X11 made Linux serious quickly. More about that porting project can be read in Interview: Orest Zborowski.

A more complete history of Linux can be read in the History of Linux.

Linux is free software and a current/ongoing project, so for any additional information please see Linux page at Wikipedia.

GNU/Linux

Stallman needed a kernel, and Torvalds needed all other software for a usable operating system.

In 1991 Torvalds attended Stallman’s talk on Free Software where they’ve met. At least 5 GNU/Linux distributions became available as early as 1992.

GNU/Linux is the operating system running on all Top 500 most powerful computer systems in the world. (In previous years and decades, those systems were running some versions of Unix.)

In June 2023, GNU/Linux reached 3% desktop market share, an extraordinary achievement.

GNU/Linux is free software and a current/ongoing project, so for any additional information please see GNU/Linux page at Wikipedia.

Additional Information

386BSD

BSDi’s commercial operating system BSD/386 (later renamed BSD/OS) was not the only spinoff from CSRG.

One of BSDi’s founders was William Jolitz. As the release of BSD/386 in late 1991 was nearing, Jolitz supposedly discovered that BSDi planned not to release BSD/386 under the BSD license.

Unhappy with the fact, Jolitz removed the code he had done for BSD/386 and left BSDi to organize a competing and free operating system, confusingly named 386BSD.

In 1992, William Jolitz and his wife Lynne Jolitz released 386BSD versions 0.0 and 0.1. Users began producing bug fixes and enhancements, releasing them as unofficial patches.

In 1993, disagreeing with Jolitz on the future direction and releases of 386BSD, one group of users founded the FreeBSD project.

Also in 1993, another group of users founded the NetBSD project, with the goal of reuniting 386BSD and other BSDs into a common OS with good multi-platform support.

386BSD released version 1.0 in 1994, and after a period of popularity it was largely forgotten by the 2000s.

NetBSD and its fork OpenBSD, and FreeBSD and its fork DragonFly BSD are active and most popular BSD Unix distributions available today.

BSD and GNU/Linux Differences

Two biggest branches of traditional Unix, BSD and System V, have diverged over time. Even their userland utilities are in some cases significantly different. For example, ps aux on BSD and ps -ef on SysV are equivalent commands to display all system processes.

GNU-based utilities have bridged that gap by mostly supporting both styles and also adding their own, more uniform and modern style where it made sense.

But in terms of BSD and GNU/Linux, their primary differences can be summarized as follows:

  1. Look- & feel-wise, BSDs take pride in having direct Unix lineage, they are arguably harder to install, and they require more knowledge to use. They also have more limited hardware support and consequently a smaller user base

  2. Licensing-wise, even though BSD licenses, a similar MIT License, and GNU GPL licenses are all free software licenses, they have a key difference:

BSD and MIT licenses are very permissive, they do not require source code to be available, and they allow reuse and relicensing of code as proprietary software. The only requirement is that the relicensed software includes a copy of the original license and copyright notice.

On the other hand, GNU GPL and variants are copyleft licenses. They guarantee users four basic freedoms – to use, study, modify, and share software. As such, they require making source code available and require that, if GPL code is used, its derivatives also be distributed under the same or equivalent license terms as the original.

This copyleft protection provided by GPL was crucial to the success of GNU/Linux and Free Software in general, guaranteeing that programmers’ work would benefit everyone and remain free, rather than be relicensed and exploited by commercial companies without giving anything back.

Worth clarifying is that GNU GPL does not prevent commercial use, it only prevents abuse. It is perfectly fine for software authors to offer a second, commercial type of license to customers who wish to redistribute their software under non-free license terms.

The Term “Open Source”

In 1998, Netscape released their web browser Netscape Navigator as Open Source Software. Netscape and its Netscape Communicator suite are ancestors of today’s Mozilla Foundation and its products like the Firefox web browser and Thunderbird e-mail client.

However, at the time of Netscape’s release, the term Open Source Software (OSS) did not yet exist. Netscape’s publishing the source code had prompted a meeting at which the term was coined.

Later in 1998, Bruce Perens and Eric S. Raymond founded the non-profit Open Source Initiative (OSI) as a steward organization for the Open Source Software movement. OSI’s website is https://opensource.org/.

OSI maintains the Open Source Definition and the corresponding open source certification mark.

The terms Free Software and Open Source are often used interchangeably (especially in informal speech), but they are different. Their differences can be summarized as follows:

  • The term Open Source was coined to help promote the open source business model to companies who did not understand or care about Free Software

  • Open Source is focused on benefits for businesses, while Free Software is focused on benefits for users

  • Open Source is utilitarian and concerns itself with availability of source code, while Free Software concerns itself with user freedoms (of which source code availability is one)

  • Open Source movement accepts the existence of proprietary software, while Free Software movement considers all non-free software bad

In short, all Free Software qualifies as Open Source, but only a subset of Open Source qualifies as Free Software.

SCO versus GNU/Linux

Around 2003, The SCO Group, who bought some Unix assets from Novell in 1995, was used as a tool to start a series of legal disputes between SCO and Linux vendors.

In 2003, in SCO v. IBM, SCO sued IBM over code contributed to the Linux kernel. SCO claimed that part of it was SCO’s intellectual property, asking between $1B and $5B for damages, and aiming to collect royalties from Linux. They went as far as to start offering big customers to pay for Linux at a discount quickly, rather than be confronted with high costs later.

The lawsuits had no real chance of succeeding; their purpose was to slow down Linux’ rise in popularity by any means, including creating operational difficulties and spreading FUD (fear, uncertainty, and doubt). The applicability and effectiveness of this method on software was already proven, unintentionally, a decade earlier during Unix Wars.

In 2007, a long four years later, in SCO v. Novell, it was ruled that Novell did not transfer the Unix copyright to SCO, invalidating SCO’s claims and leading SCO to bankruptcy by 2012.

Current Unix, BSD, GNU, and Linux Offerings

Surviving proprietary Unix implementations are:

Open source SysV distributions, descended from the discontinued OpenSolaris and its successor Illumos, are:

Most popular open source BSD implementations are:

Many other BSD distributions can be seen listed in List of BSD operating systems and Comparison of BSD operating systems.

And finally, open source GNU/Linux implementations are too numerous and diverse to list. We could mention just some:

The above list is biased. Many other distributions based on the Linux kernel can be seen listed in https://en.wikipedia.org/wiki/List_of_Linux_distributions and Comparison of Linux distributions.

A broader comparison of all open source operating systems can be seen in Comparison of open-source operating systems.

And, worth mentioning, a free and educational reimplementation of V6 Unix from John Lions' commentary on the UNIX Operating System is available and called xv6.

Article Collection

This article is part of the following series:

1. Unix

Automatic Links

The following links appear in the article:

1. The Daemon, the GNU & the Penguin - http://www.groklaw.net/staticpages/index.php?page=20051013231901859
2. The UNIX Time-Sharing System - https://dl.acm.org/doi/10.1145/361011.361061
3. 386BSD - https://en.wikipedia.org/wiki/386BSD
4. 4.4BSD-Lite - https://en.wikipedia.org/wiki/4.4BSD
5. I386 CPU - https://en.wikipedia.org/wiki/80386
6. 9P Protocol - https://en.wikipedia.org/wiki/9P_(protocol)
7. AIX - https://en.wikipedia.org/wiki/AIX
8. ARPANet - https://en.wikipedia.org/wiki/ARPANET
9. AT&T - https://en.wikipedia.org/wiki/AT%26T
10. AT&T Computer Systems (AT&T-CS) - https://en.wikipedia.org/wiki/AT%26T_Computer_Systems
11. AT&T Information Systems (ATTIS) - https://en.wikipedia.org/wiki/AT%26T_Information_Systems
12. Ancient Unix - https://en.wikipedia.org/wiki/Ancient_UNIX
13. Apple v. Franklin - https://en.wikipedia.org/wiki/Apple_v._Franklin
14. Assembly Language - https://en.wikipedia.org/wiki/Assembler_(computing)
15. BSD/386 - https://en.wikipedia.org/wiki/BSD/OS
16. BSD Licenses - https://en.wikipedia.org/wiki/BSD_licenses
17. Batch Processing - https://en.wikipedia.org/wiki/Batch_processing
18. AT&T Bell Labs - https://en.wikipedia.org/wiki/Bell_Labs
19. BSDi - https://en.wikipedia.org/wiki/Berkeley_Software_Design
20. Berkeley Software Distribution (BSD) - https://en.wikipedia.org/wiki/Berkeley_Software_Distribution
21. 4.4BSD-Lite2 - https://en.wikipedia.org/wiki/Berkeley_Software_Distribution#Standards
22. Berkeley Timesharing System - https://en.wikipedia.org/wiki/Berkeley_Timesharing_System
23. Bill Joy - https://en.wikipedia.org/wiki/Bill_Joy
24. Bob Fabry - https://en.wikipedia.org/wiki/Bob_Fabry
25. Break Up of AT&T’s Telecommunications Monopoly - https://en.wikipedia.org/wiki/Breakup_of_the_Bell_System
26. Brian Kernighan - https://en.wikipedia.org/wiki/Brian_Kernighan
27. Bruce Perens - https://en.wikipedia.org/wiki/Bruce_Perens
28. Butler Lampson - https://en.wikipedia.org/wiki/Butler_Lampson
29. CB UNIX - https://en.wikipedia.org/wiki/CB_UNIX
30. C Programming Language - https://en.wikipedia.org/wiki/C_(programming_language)
31. Charles P. Thacker - https://en.wikipedia.org/wiki/Chuck_Thacker
32. Common Desktop Environment (CDE) - https://en.wikipedia.org/wiki/Common_Desktop_Environment
33. Common Open Software Environment (COSE) - https://en.wikipedia.org/wiki/Common_Open_Software_Environment
34. Communications of the ACM (CACM) - https://en.wikipedia.org/wiki/Communications_of_the_ACM
35. Comparison of BSD Operating Systems - https://en.wikipedia.org/wiki/Comparison_of_BSD_operating_systems
36. Comparison of Linux Distributions - https://en.wikipedia.org/wiki/Comparison_of_Linux_distributions
37. Comparison of Open-Source Operating Systems - https://en.wikipedia.org/wiki/Comparison_of_open_source_operating_systems
38. Compatible Time-Sharing System (CTSS) - https://en.wikipedia.org/wiki/Compatible_Time-Sharing_System
39. CTSS Features - https://en.wikipedia.org/wiki/Compatible_Time-Sharing_System#Features
40. Compositing - https://en.wikipedia.org/wiki/Compositing_window_manager
41. CSRG - https://en.wikipedia.org/wiki/Computer_Systems_Research_Group
42. Multi-Tasking - https://en.wikipedia.org/wiki/Computer_multitasking
43. Copyleft - https://en.wikipedia.org/wiki/Copyleft
44. DECUS - https://en.wikipedia.org/wiki/DECUS
45. DYNIX - https://en.wikipedia.org/wiki/DYNIX
46. DARPA - https://en.wikipedia.org/wiki/Darpa
47. Darwin - https://en.wikipedia.org/wiki/Darwin_(operating_system)
48. Debian GNU - https://en.wikipedia.org/wiki/Debian
49. Debian Free Software Guidelines (DFSG) - https://en.wikipedia.org/wiki/Debian_Free_Software_Guidelines
50. Dell - https://en.wikipedia.org/wiki/Dell
51. Dennis Ritchie - https://en.wikipedia.org/wiki/Dennis_Ritchie
52. Devuan GNU+Linux - https://en.wikipedia.org/wiki/Devuan
53. Digital Equipment Corporation (DEC) - https://en.wikipedia.org/wiki/Digital_Equipment_Corporation
54. Distributed Computing Environment (DCE) - https://en.wikipedia.org/wiki/Distributed_Computing_Environment
55. Doug McIlroy - https://en.wikipedia.org/wiki/Doug_McIlroy
56. DragonFly BSD - https://en.wikipedia.org/wiki/DragonFly_BSD
57. Eric S. Raymond - https://en.wikipedia.org/wiki/Eric_S._Raymond
58. FUD - https://en.wikipedia.org/wiki/Fear%2C_uncertainty_and_doubt
59. Fernando Corbató - https://en.wikipedia.org/wiki/Fernando_J._Corbat%C3%B3
60. Firefox - https://en.wikipedia.org/wiki/Firefox
61. Clone/Rfork Syscall - https://en.wikipedia.org/wiki/Fork_(system_call)#Rfork
62. FreeBSD - https://en.wikipedia.org/wiki/FreeBSD
63. Free Software Foundation (FSF) - https://en.wikipedia.org/wiki/Free_Software_Foundation
64. Free and Open-Source Software - https://en.wikipedia.org/wiki/Free_and_open-source_software
65. Free Software - https://en.wikipedia.org/wiki/Free_software
66. Free Software Movement - https://en.wikipedia.org/wiki/Free_software_movement
67. GE 635 - https://en.wikipedia.org/wiki/GE-600_series
68. GNOME - https://en.wikipedia.org/wiki/GNOME
69. GNU Software - https://en.wikipedia.org/wiki/GNU
70. GNU Compiler Collection (GCC) - https://en.wikipedia.org/wiki/GNU_Compiler_Collection
71. GNU Emacs - https://en.wikipedia.org/wiki/GNU_Emacs
72. GNU GPL - https://en.wikipedia.org/wiki/GNU_General_Public_License
73. GNU Hurd - https://en.wikipedia.org/wiki/GNU_Hurd
74. The GNU Project - https://en.wikipedia.org/wiki/GNU_Project
75. GNU Manifesto - https://en.wikipedia.org/wiki/GNU_manifesto
76. General Electric - https://en.wikipedia.org/wiki/General_electric
77. GNU/Linux - https://en.wikipedia.org/wiki/Gnu/linux
78. HP-UX - https://en.wikipedia.org/wiki/HP-UX
79. Hacker Culture - https://en.wikipedia.org/wiki/Hacker_culture
80. Steven Levy's Book 'Hackers' - https://en.wikipedia.org/wiki/Hackers:_Heroes_of_the_Computer_Revolution
81. Hewlett Packard - https://en.wikipedia.org/wiki/Hewlett-Packard
82. History of Linux - https://en.wikipedia.org/wiki/History_of_Linux
83. History of the Berkeley Software Distribution - https://en.wikipedia.org/wiki/History_of_the_Berkeley_Software_Distribution
84. Honeywell - https://en.wikipedia.org/wiki/Honeywell
85. Hypervisor - https://en.wikipedia.org/wiki/Hypervisor
86. IBM - https://en.wikipedia.org/wiki/IBM
87. IBM 701 - https://en.wikipedia.org/wiki/IBM_701
88. IBM 704 - https://en.wikipedia.org/wiki/IBM_704
89. IBM 709 - https://en.wikipedia.org/wiki/IBM_709
90. IBM AIX - https://en.wikipedia.org/wiki/IBM_AIX
91. IBM System 360 Model 91 - https://en.wikipedia.org/wiki/IBM_System/360_Model_91
92. Illumos - https://en.wikipedia.org/wiki/Illumos
93. ITS - https://en.wikipedia.org/wiki/Incompatible_Timesharing_System
94. ITS Significant Technical Features - https://en.wikipedia.org/wiki/Incompatible_Timesharing_System#Significant_technical_features
95. Inferno - https://en.wikipedia.org/wiki/Inferno_(operating_system)
96. IEEE Institute - https://en.wikipedia.org/wiki/Institute_of_Electrical_and_Electronics_Engineers
97. Interdata 7/32 and 8/32 - https://en.wikipedia.org/wiki/Interdata_8/32
98. IRIX - https://en.wikipedia.org/wiki/Irix
99. Jack Dennis - https://en.wikipedia.org/wiki/Jack_Dennis
100. Joe Ossanna - https://en.wikipedia.org/wiki/Joe_Ossanna
101. John Lions - https://en.wikipedia.org/wiki/John_Lions
102. John McCarthy - https://en.wikipedia.org/wiki/John_McCarthy_(computer_scientist)
103. Keith Bostic - https://en.wikipedia.org/wiki/Keith_Bostic_(software_engineer)
104. Ken Thompson - https://en.wikipedia.org/wiki/Ken_Thompson
105. L. Peter Deutsch - https://en.wikipedia.org/wiki/L._Peter_Deutsch
106. Larry McVoy - https://en.wikipedia.org/wiki/Larry_McVoy
107. LessTif - https://en.wikipedia.org/wiki/LessTif
108. Linux Page at Wikipedia - https://en.wikipedia.org/wiki/Linux
109. Namespaces - https://en.wikipedia.org/wiki/Linux_namespaces
110. John Lions' Commentary on the UNIX Operating System - https://en.wikipedia.org/wiki/Lions%27_Commentary_on_UNIX_6th_Edition,_with_Source_Code
111. Lisp - https://en.wikipedia.org/wiki/Lisp_(programming_language)
112. Lisp Machines - https://en.wikipedia.org/wiki/Lisp_machine
113. List of BSD Operating Systems - https://en.wikipedia.org/wiki/List_of_BSD_operating_systems
114. https://en.wikipedia.org/wiki/List_of_Linux_distributions
115. List of Unix Systems - https://en.wikipedia.org/wiki/List_of_Unix_systems
116. Lynne Jolitz - https://en.wikipedia.org/wiki/Lynne_Jolitz
117. MIT Artificial Intelligence Lab - https://en.wikipedia.org/wiki/MIT_AI_Lab
118. MIT License - https://en.wikipedia.org/wiki/MIT_License
119. Apple MacOS - https://en.wikipedia.org/wiki/MacOS
120. CMU Mach 2.5 Microkernel - https://en.wikipedia.org/wiki/Mach_(kernel)
121. Mainframes - https://en.wikipedia.org/wiki/Mainframe
122. Marshall Kirk McKusick - https://en.wikipedia.org/wiki/Marshall_Kirk_McKusick
123. Memory Management Unit (MMU) - https://en.wikipedia.org/wiki/Memory_management_unit
124. Microcomputers - https://en.wikipedia.org/wiki/Microcomputer
125. Mike Karels - https://en.wikipedia.org/wiki/Mike_Karels
126. Minicomputers - https://en.wikipedia.org/wiki/Minicomputers
127. MINIX - https://en.wikipedia.org/wiki/Minix
128. Motif - https://en.wikipedia.org/wiki/Motif_(software)
129. Mozilla Foundation - https://en.wikipedia.org/wiki/Mozilla_Foundation
130. Thunderbird - https://en.wikipedia.org/wiki/Mozilla_Thunderbird
131. MERT - https://en.wikipedia.org/wiki/Multi-Environment_Real-Time
132. Multi-User - https://en.wikipedia.org/wiki/Multi-user_software
133. Multics - https://en.wikipedia.org/wiki/Multics
134. Multics Novel Ideas - https://en.wikipedia.org/wiki/Multics#Novel_ideas
135. Murray Hill - https://en.wikipedia.org/wiki/Murray_Hill,_New_Jersey
136. NIST - https://en.wikipedia.org/wiki/National_Institute_of_Standards_and_Technology
137. NeXTSTEP - https://en.wikipedia.org/wiki/NeXTSTEP
138. Net/1 - https://en.wikipedia.org/wiki/Net/1
139. NetBSD - https://en.wikipedia.org/wiki/NetBSD
140. Netscape - https://en.wikipedia.org/wiki/Netscape
141. Netscape Communicator - https://en.wikipedia.org/wiki/Netscape_Communicator
142. Netscape Navigator - https://en.wikipedia.org/wiki/Netscape_Navigator
143. Novell - https://en.wikipedia.org/wiki/Novell
144. Open Look - https://en.wikipedia.org/wiki/OPEN_LOOK
145. OSF/1 - https://en.wikipedia.org/wiki/OSF/1
146. Open Design - https://en.wikipedia.org/wiki/Open-design_movement
147. Open Source Software Movement - https://en.wikipedia.org/wiki/Open-source-software_movement
148. Open Source Software - https://en.wikipedia.org/wiki/Open-source_software
149. OpenBSD - https://en.wikipedia.org/wiki/OpenBSD
150. OpenIndiana - https://en.wikipedia.org/wiki/OpenIndiana
151. OpenSolaris - https://en.wikipedia.org/wiki/OpenSolaris
152. DEC VMS - https://en.wikipedia.org/wiki/OpenVMS
153. Open Software Foundation (OSF) - https://en.wikipedia.org/wiki/Open_Software_Foundation
154. Open Source Initiative (OSI) - https://en.wikipedia.org/wiki/Open_Source_Initiative
155. Oracle Solaris - https://en.wikipedia.org/wiki/Oracle_Solaris
156. Xerox PARC - https://en.wikipedia.org/wiki/PARC_(company)
157. DEC PDP-1 - https://en.wikipedia.org/wiki/PDP-1
158. PDP-10 - https://en.wikipedia.org/wiki/PDP-10
159. DEC PDP-11/20 - https://en.wikipedia.org/wiki/PDP-11
160. DEC PDP-15 - https://en.wikipedia.org/wiki/PDP-15
161. PDP-6 - https://en.wikipedia.org/wiki/PDP-6
162. DEC PDP-7 - https://en.wikipedia.org/wiki/PDP-7
163. DEC PDP-9 - https://en.wikipedia.org/wiki/PDP-9
164. POSIX - https://en.wikipedia.org/wiki/POSIX
165. PWB/UNIX - https://en.wikipedia.org/wiki/PWB/UNIX
166. Paging - https://en.wikipedia.org/wiki/Paging
167. Patrick Henry Winston - https://en.wikipedia.org/wiki/Patrick_Winston
168. Free Software Licenses - https://en.wikipedia.org/wiki/Permissive_free_software_license
169. PCs - https://en.wikipedia.org/wiki/Personal_computer
170. Peter H. Salus - https://en.wikipedia.org/wiki/Peter_H._Salus
171. Plan 9 - https://en.wikipedia.org/wiki/Plan_9_from_Bell_Labs
172. Proc Filesystem - https://en.wikipedia.org/wiki/Procfs
173. MIT CSAIL Project MAC - https://en.wikipedia.org/wiki/Project_MAC
174. QED - https://en.wikipedia.org/wiki/QED_(text_editor)
175. Xrandr - https://en.wikipedia.org/wiki/RandR#Other_DDX_components
176. Ray Noorda - https://en.wikipedia.org/wiki/Ray_Noorda
177. Bolt Beranek Newman (BBN) - https://en.wikipedia.org/wiki/Raytheon_BBN
178. RFC - https://en.wikipedia.org/wiki/Request_for_Comments
179. Research Unix - https://en.wikipedia.org/wiki/Research_Unix
180. Richard Stallman - https://en.wikipedia.org/wiki/Richard_Stallman
181. Richard L. 'Rick' Adams, Jr. - https://en.wikipedia.org/wiki/Rick_Adams_(Internet_pioneer)
182. Robert Morris - https://en.wikipedia.org/wiki/Robert_Morris_(cryptographer)
183. Nroff and Troff - https://en.wikipedia.org/wiki/Roff_(software)
184. A Series of Legal Disputes Between SCO and Linux Vendors - https://en.wikipedia.org/wiki/SCO%E2%80%93Linux_disputes
185. SCO v. IBM - https://en.wikipedia.org/wiki/SCO_v._IBM
186. SCO v. Novell - https://en.wikipedia.org/wiki/SCO_v._Novell
187. SDS Sigma 7 - https://en.wikipedia.org/wiki/SDS_Sigma_series
188. SHARE - https://en.wikipedia.org/wiki/SHARE_user_group
189. Santa Cruz Operation (SCO) - https://en.wikipedia.org/wiki/Santa_Cruz_Operation
190. Silicon Graphics - https://en.wikipedia.org/wiki/Silicon_Graphics
191. Single Unix Specification (SUS) - https://en.wikipedia.org/wiki/Single_Unix_Specification
192. SUSv3 - https://en.wikipedia.org/wiki/Single_Unix_Specification#2001:_Single_Unix_Specification,_version_3,_POSIX.1-2001
193. SmartOS - https://en.wikipedia.org/wiki/SmartOS
194. Solaris - https://en.wikipedia.org/wiki/Solaris_(operating_system)
195. Space Travel - https://en.wikipedia.org/wiki/Space_Travel_(video_game)
196. Spacewar! - https://en.wikipedia.org/wiki/Spacewar!
197. Steve Johnson - https://en.wikipedia.org/wiki/Stephen_C._Johnson
198. Steve Russell - https://en.wikipedia.org/wiki/Steve_Russell_(computer_scientist)
199. Structs - https://en.wikipedia.org/wiki/Struct_(C_programming_language)
200. SunOS - https://en.wikipedia.org/wiki/SunOS
201. Sun Microsystems - https://en.wikipedia.org/wiki/Sun_Microsystems
202. Acquisition of Sun Microsystems by Oracle Corporation - https://en.wikipedia.org/wiki/Sun_acquisition_by_Oracle
203. SunOS - https://en.wikipedia.org/wiki/Sunos
204. Symbolics Inc. - https://en.wikipedia.org/wiki/Symbolics_Inc.
205. Symposium on Operating System Principles (SOSP) - https://en.wikipedia.org/wiki/Symposium_on_Operating_Systems_Principles
206. System v Release 2 - https://en.wikipedia.org/wiki/System_V#SVR2
207. System v Release 3 - https://en.wikipedia.org/wiki/System_V#SVR3
208. System v Interface Definition (SVID) - https://en.wikipedia.org/wiki/System_V_Interface_Definition
209. System v Release 3 - https://en.wikipedia.org/wiki/System_V_Release_3#SVR3
210. System v Release 4 - https://en.wikipedia.org/wiki/System_V_Release_4
211. AT&T System v Release 4 (SVR4) - https://en.wikipedia.org/wiki/System_V_Release_4#SVR4
212. System Calls - https://en.wikipedia.org/wiki/System_call
213. Top 500 - https://en.wikipedia.org/wiki/TOP500
214. Model 33 Teletype - https://en.wikipedia.org/wiki/Teletype_Model_33
215. The C Programming Language - https://en.wikipedia.org/wiki/The_C_Programming_Language
216. Free Software Definition - https://en.wikipedia.org/wiki/The_Free_Software_Definition
217. The Open Group - https://en.wikipedia.org/wiki/The_Open_Group
218. Open Source Definition - https://en.wikipedia.org/wiki/The_Open_Source_Definition
219. The SCO Group - https://en.wikipedia.org/wiki/The_SCO_Group
220. IBM Research Center at Yorktown Heights in Hudson Valley - https://en.wikipedia.org/wiki/Thomas_J._Watson_Research_Center
221. Time-Sharing - https://en.wikipedia.org/wiki/Time-sharing
222. TOPS-20 - https://en.wikipedia.org/wiki/Tops-20
223. Digital UNIX - https://en.wikipedia.org/wiki/Tru64_UNIX
224. Unix System V - https://en.wikipedia.org/wiki/UNIX_System_V
225. Unix System Development Laboratory (USDL) - https://en.wikipedia.org/wiki/UNIX_System_V#SVR2
226. USENIX: The Advanced Computing Systems Association - https://en.wikipedia.org/wiki/USENIX
227. UUNET - https://en.wikipedia.org/wiki/UUNET
228. Ubuntu - https://en.wikipedia.org/wiki/Ubuntu
229. DEC Ultrix - https://en.wikipedia.org/wiki/Ultrix
230. United States v. AT&T - https://en.wikipedia.org/wiki/United_States_v._AT%26T
231. University of California, Berkeley (UCB) - https://en.wikipedia.org/wiki/University_of_California%2C_Berkeley
232. University of New South Wales (UNSW) - https://en.wikipedia.org/wiki/University_of_New_South_Wales
233. Unix - https://en.wikipedia.org/wiki/Unix
234. Unix-Like - https://en.wikipedia.org/wiki/Unix-like
235. Unix International (UI) - https://en.wikipedia.org/wiki/Unix_International
236. Unix Philosophy - https://en.wikipedia.org/wiki/Unix_Philosophy
237. System III - https://en.wikipedia.org/wiki/Unix_System_III
238. Unix System Laboratories (USL) - https://en.wikipedia.org/wiki/Unix_System_Laboratories
239. USL v. BSDi Lawsuit - https://en.wikipedia.org/wiki/Unix_System_Laboratories,_Inc._v._Berkeley_Software_Design,_Inc.
240. Unix System V - https://en.wikipedia.org/wiki/Unix_System_V
241. Pipes - https://en.wikipedia.org/wiki/Unix_pipe
242. Unix Wars - https://en.wikipedia.org/wiki/Unix_wars
243. Usenet - https://en.wikipedia.org/wiki/Usenet
244. UTF-8 - https://en.wikipedia.org/wiki/Utf-8
245. DEC VAX - https://en.wikipedia.org/wiki/VAX
246. Version 6 Unix - https://en.wikipedia.org/wiki/Version_6_Unix
247. Version 7 Unix - https://en.wikipedia.org/wiki/Version_7_Unix
248. Version 8 Unix - https://en.wikipedia.org/wiki/Version_8_Unix
249. Virtual Memory - https://en.wikipedia.org/wiki/Virtual_memory
250. IBM Watson - https://en.wikipedia.org/wiki/Watson_Scientific_Computing_Laboratory
251. Western Electric - https://en.wikipedia.org/wiki/Western_Electric
252. Wiki - https://en.wikipedia.org/wiki/Wiki
253. William Jolitz - https://en.wikipedia.org/wiki/William_Jolitz
254. X/Open - https://en.wikipedia.org/wiki/X/Open
255. X Window System (X11) - https://en.wikipedia.org/wiki/X11
256. Xenix - https://en.wikipedia.org/wiki/Xenix
257. Xv6 - https://en.wikipedia.org/wiki/Xv6
258. The Design of the Unix Operating System - https://github.com/jyfc/ebook/blob/master/03_operating_system/the_design_of_the_unix_operating_system.pdf
259. DEC PDP-11/40 - https://gunkies.org/wiki/PDP-11/40
260. DEC PDP-11/45 - https://gunkies.org/wiki/PDP-11/45
261. DEC PDP-11/70 - https://gunkies.org/wiki/PDP-11/70
262. V0 Unix - https://gunkies.org/wiki/PDP-7_UNIX
263. Shell - https://gunkies.org/wiki/Shell
264. Unix Fifth Edition - https://gunkies.org/wiki/UNIX_Fifth_Edition
265. Unix First Edition - https://gunkies.org/wiki/UNIX_First_Edition
266. Unix Fourth Edition - https://gunkies.org/wiki/UNIX_Fourth_Edition
267. Unix Second Edition - https://gunkies.org/wiki/UNIX_Second_Edition
268. Unix Sixth Edition - https://gunkies.org/wiki/UNIX_Sixth_Edition
269. Unix Support Group (USG) - https://gunkies.org/wiki/UNIX_Support_Group
270. Unix Third Edition - https://gunkies.org/wiki/UNIX_Third_Edition
271. USG UNIX - https://gunkies.org/wiki/USG_UNIX
272. Unix Eighth Edition - https://gunkies.org/wiki/Unix_Eighth_Edition
273. Unix Ninth Edition - https://gunkies.org/wiki/Unix_Ninth_Edition
274. Unix Seventh Edition - https://gunkies.org/wiki/Unix_Seventh_Edition
275. Unix Tenth Edition - https://gunkies.org/wiki/Unix_Tenth_Edition
276. Living Computers: Museum + Labs - https://livingcomputers.org/
277. FIPS 151 - https://nvlpubs.nist.gov/nistpubs/Legacy/FIPS/fipspub151.pdf
278. OmniOS - https://omnios.org/
279. https://opensource.org/
280. The Full Text of the USL-UCB Settlement - https://web.archive.org/web/20041211142119/http://www.groklaw.net/pdf/USLsettlement.pdf
281. The Berkeley Software Distribution - https://www.abortretry.fail/p/the-berkley-software-distribution
282. The Evolution of the Unix Time-Sharing System - https://www.bell-labs.com/usr/dmr/www/hist.html
283. Stallman Announced the GNU Project - https://www.gnu.org/gnu/initial-announcement.html
284. The GNU Manifesto - https://www.gnu.org/gnu/manifesto.html
285. GNU General Public License - https://www.gnu.org/licenses/gpl-3.0.html
286. What Is Free Software? - https://www.gnu.org/philosophy/free-sw.html
287. The Sourceware Operating System Proposal - https://www.landley.net/history/mirror/unix/srcos.html
288. Up to 20% Stake in Sun Microsystems - https://www.latimes.com/archives/la-xpm-1988-01-07-fi-33970-story.html
289. AT&T Sold Its Stake in Sun Microsystems - https://www.latimes.com/archives/la-xpm-1991-06-04-fi-223-story.html
290. Linus Torvalds Announced - https://www.linux.com/news/linuss-famous-email/
291. Interview: Orest Zborowski - https://www.linuxjournal.com/article/70
292. Network UNIX - https://www.rfc-editor.org/rfc/rfc681.txt
293. GNU/Linux Reached 3% Desktop Market Share - https://www.tomshardware.com/news/linux-hits-3-percent-client-pc-market-share
294. Unix Programmer's Manual, 2nd Edition - https://www.tuhs.org/Archive/Distributions/Research/Dennis_v2/v2man.pdf
295. TUHS.ORG - 2.11BSD - Patches - https://www.tuhs.org/Archive/Distributions/UCB/2.11BSD/Patches/?C=M;O=D
296. ;Login: - https://www.usenix.org/publications/loginonline
297. Thompson's 2019 Interview - https://www.youtube.com/watch?v=EY6q5dv_B-o
298. Video of V0 Unix Running on a PDP-7 - https://www.youtube.com/watch?v=pvaPaWyiuLA