|< Day Day Up >|
The story of UNIX reads like an ancient Greek epic poem, full of conflict, interesting personalities, and incestuous relationships. It is no wonder , then, that so many histories of this important operating system have been written. While the history of UNIX might seem irrelevant to migration issues, it actually explains many of the problems that arise from today's migration efforts and their potential solutions.
The Early Years at AT&T
UNIX began in 1969 when Ken Thompson and David Retch developed a new operating system for the PDP-7 computer that had replaced their Honeywell 635 running GECOS (General Electric Company Operating System). They sought to emulate many of the key features of the MULTICS operating system that they had previously worked on while creating with this more powerful computer. The resulting operating systems was dubbed "UNICS" (Uniplexed Information and Computing System), an acronym designed to poke fun at the MULTICS project. Eventually, the name was changed from UNICS to the modern name , UNIX.
Two years later, in 1971, UNIX was ported to the PDP-11/20 to support more users and the roff text formatting system. It was called the First Edition and was the predecessor for all versions of UNIX to come. UNIX would become different from typical operating systems of the day because it was written mainly in high-level languages with only a relatively small amount of assembly code (called the kernel). This made the operating system portable, allowing programmers to rewrite the small kernel for a new platform and simply recompile the high-level code on the new system.
In the following years, Thompson and Ritchie formalized their creation at the ACM Symposium with a paper called "The UNIX Time Sharing System." This paper, and its subsequent publication in the ACM's journal, propelled UNIX to the front of many researchers' minds. However, because of antitrust issues with the U.S. Government, AT&T was barred from manufacturing or selling any equipment that was not related to the telephone business. UNIX and its source code were made freely available to many universities for educational purposes. Two of the universities that received this source code were the University of California at Berkeley (UCB) and the University of New South Wales (UNSW) in Sydney, Australia.
Berkeley Software Distributions
In 1974, Ken Thompson returned to his alma mater, UCB, to begin a one-year visiting professorship. Berkeley was already running the UNIX operating system on several machines. A group of graduate students, led by Bill Joy and Chuck Haley, began to improve the operating system through additions such as a visual editor (vi), the Pascal compiler, and the C shell. They also began to take an active interest in the UNIX source code, providing fixes and enhancements to the operating system.
In 1977, Joy put together Berkeley Software Distribution (BSD), which bundled these changes with the Pascal system, and distributed it freely to other sites. This led to a Second Berkeley Software Distribution ( shortened to 2BSD) in mid-1978, which incorporated even more modifications and additions. The third distribution (3BSD) was ported to the new 32-bit VAX and included a virtual memory implementation. After this third distribution, the United States Defense Advanced Research Projects Agency (DARPA) began funding the distribution as an early part of the Internet.
In October 1980, 4BSD debuted with an improved Pascal compiler and enhanced mail-handling capabilities. As more improvements were made to this distribution (mainly in the areas of performance), AT&T balked at letting Berkeley call their next distribution 5BSD. AT&T's commercial UNIX distribution, System V, had just been released, and they were worried that this might cause confusion in the marketplace . Berkeley agreed to change its numbering scheme for future releases by simply incrementing the minor number. Hence, this release was called 4.1BSD.
1983 saw the release of 4.2BSD, the fruit of a second round of funding from DARPA. 4.2BSD was immensely popular, shipping more copies than all the previous BSD releases combined. The success of the 4.2BSD release was directly attributed to its inclusion of TCP/IP networking and the Berkeley Fast File system, and to DARPA's sponsorship.
Future years saw the release of 4.3BSD in 1986 and 4.4BSD in 1994. However, in the years between these two releases, a bitter lawsuit was contested between Berkeley; Unix System Laboratories (USL) was a spin-off of AT&T that sold and developed UNIX) and a smaller company called Berkeley Software Design, Incorporated (BSDI). AT&T took offense at BSDI selling a version of the BSD and marketing it as UNIX. BSDI claimed that Berkeley's distribution had reimplemented all but six source code files and BSDI had done the rest. After much legal wrangling in U.S. state and district courts, in 1994, USL, Berkeley, and BSDI came to an agreement that amounted to a number of minor changes and the addition of copyrights to files.
Following the end of legal hostilities, BSD was split into 4.4BSD-Lite and 4.4BSD-Encumbered. 4.4BSD-Lite was free of USL intellectual property and became the basis for most of the modern BSD releases today. These include NetBSD, FreeBSD, and BSD/OS (as WindRiver's BSDI-derived release).
A third family of the UNIX releases was born in the mid-1980s when researchers at Carnegie-Mellon University developed a microkernel for UNIX. Following UNIX's founding philosophy of small and simple, the developers of the Mach microkernel (as they called it), implemented a minimal set of essential services while providing a framework for the majority of user services.
This approach was popular with vendors because it was unencumbered with the problem besetting BSD, namely, AT&T/USL licenses. Many popular later commercial UNIXes such as NextStep, OSF/1, and MacOS X were based on Mach.
Commercial UNIX Releases
One of the earliest commercial releases of UNIX came from the Santa Cruz Organization (SCO), which produced XENIX in 1983. XENIX was a variant of the System V Release 3 (SVR3) that ran on Intel 8086-based personal computers. It would later be renamed SCO UNIX.
In early 1982, Bill Joy announced that he was leaving Berkeley for a small workstation company across the San Francisco Bay called Sun Microsystems. He took over the Sun Operating System (SunOS ¢), Sun's commercial version of UNIX based on 4.2BSD. SunOS 1.0 shipped in 1983.
In 1992, Sun migrated from their BSD-based SunOS to Solaris, which was based on UNIX System V Release 4 (SVR4). Sun had collaborated with AT&T on the development of SVR4, contributing technologies such as Network File System (NFS), virtual file interface ( vfs / vnodes ), and a new virtual memory system. To help their customers adopt the Solaris OS faster, they created the Sun Migration and Engineering Center in Toronto.
Hewlett-Packard joined the UNIX market in 1986 with their release of HP-UX. HP-UX was originally based on AT&T source code.
IBM entered the UNIX market with their own AIX/RT in 1986. AIX/RT was eventually renamed simply AIX and was originally based on SVR3.
Digital marketed UNIX for their VAX servers under the Ultrix brand name.
In response to Sun's co-development of SVR4, IBM, Digital, HP, and others formed the Open Software Foundation to develop a competing UNIX unencumbered by AT&T intellectual property. This produced OSF/1, one of the first operating systems based around the Mach kernel. OSF/1 debuted in 1990. However, few of the other member groups adopted this UNIX, due to a downturn in the industry. Most notably, HP and IBM chose to continue with their HP-UX and AIX products, incorporating parts of the OSF/1 specification into their products. Digital eventually refined OSF/1 and renamed it Digital UNIX in 1995. After Digital's merger with Compaq in 1999, the product was renamed again to Tru64.
Through industry consolidation, many of the commercial versions of UNIX have disappeared. For example, IBM's acquisition of Sequent resulted in the demise of Dynix PT-X. Compaq's acquisition of DEC, followed by HP's acquisition of Compaq caused development to cease for Ultrix and Tru64. Those versions of UNIX that remain are System V (SYSV) based. There are few significant differences between the leading commercial versions of UNIX that would impede migration projects.
The most recent addition to the UNIX family tree is the development of Linux. A simple newsgroup posting by its founder, Linus Torvald, announced its birth in 1991:
Linux was created to be a free operating system by combining Linus's Intel x86 kernel with the GNU project's extensive UNIX commands and utilities. It contains a monolithic kernel with many of the BSD enhancements. Much like the many BSD versions, there are dozens of Linux distributions such as Red Hat Linux, Debian Linux, SuSe, Mandrake, and Caldera. Each represents a slightly different collection of kernel versions and utilities, along with a different target market and philosophy.
Linux is not an SVR4-compliant product. While programs compiled on an SVR4 Intel platform are guaranteed to run on another SVR4 Intel implementation, this is not true for Linux. Despite Linux's heritage, source code migration from Linux to the Solaris OS can be quite simple.
|< Day Day Up >|