Embed
Email

HISTORY OF UNIX

Document Sample

Shared by: pengxiuhui
Categories
Tags
Stats
views:
7
posted:
12/18/2011
language:
pages:
28
HISTORY OF UNIX



Unix

Dari Wikipedia Indonesia, ensiklopedia bebas berbahasa Indonesia.

Unix atau UNIX adalah sebuah sistem operasi komputer yang dikembangkan oleh AT&T Bell

Labs pada tahun 1960 dan 1970-an. UNIX didesain sebagai sistem operasi yang portable, multi-

tasking dan multi-user. BSD adalah salah satu turunan (varian) Unix yang dikembangkan oleh

Universitas California, Berkeley.





Daftar isi



 1 Pendahuluan

 2 Sejarah

o 2.1 1960 dan 1970

 3 Aplikasi

 4 Unix Di Indonesia

 5 Jenis-jenis UNIX





Pendahuluan

Sistem operasi Unix digunakan secara luas baik sebagai server atau workstation. Arsitektur Unix

dan model client/server merupakan elemen yang paling penting dalam perkembangan internet

dan mengubah proses komputasi secara terpusat dalam jaringan dari pada proses tunggal di

komputer. Linux, merupakan sistem operasi yang diadopsi dari Unix dan tersedia secara bebas

mendapat popularitas sebagai alternatif dari sistem operasi proprietary seperti Microsoft

Windows



Sejarah

1960 dan 1970

Pada tahun 1960, Massachusetts Institute of Technology, AT&T Bell Labs, and General Electric

bekerja dalam sebuah sistem operasi eksprimental yang disebut Multics (Multiplexed

Information and Computing Service).



Aplikasi

Banyak aplikasi-aplikasi dalam sistem operasi lain yang awalnya lahir dalam lingkungan sistem

operasi Unix. Salah satu contoh aplikasi yang dimaksud misalnya adalah gnuplot.



Unix di Indonesia

Di Indonesia Unix digunakan sebagai Server aplikasi, produk yang beredar di pasaran antara lain

IBM AIX, HP UX, Sun Solaris. Masing-masing produk ini umumnya memiliki pasar tersendiri

seperti Sun Solaris yang digunakan pada operator telekomunikasi selular, HP UX pada

manufaktur dan distribusi. Fungsi Unix sebagai workstation kurang populer mengingat harganya

yang mahal.

Jenis-jenis UNIX

UNIX adalah sebuah sistem operasi yang dikembangkan oleh banyak pihak. Setiap pihak yang

mengembangkan UNIX, menambahkan teknologi miliknya ke dalam UNIX, yang meskipun hal

itu di luar standar, mampu menjadikan sistem operasi UNIX lebih kuat atau lebih andal.



Tabel berikut menyebutkan beberapa jenis-jenis UNIX.



Nama varian

Dikembangkan oleh (vendor/organisasi)

UNIX

A/UX Apple Computer

Domain/X Apple Computer

Apple Computer (modifikasi yang dilakukan oleh Apple dari kernel BSD dan

Darwin

diaplikasikan pada Mac OS/X).

CTIX Convergent Technology

Distrix Convergent Technology

UniCOS Cray Research (sekarang bagian dari Silicon Graphics Incorporated)

DG/UX Data General Corporation

Digital Equipment Corporation (DEC) (dibeli oleh Compaq, sekarang bagian

Digital UNIX

dari Hewlett-Packard)

Digital Equipment Corporation (DEC) (dibeli oleh Compaq. sekarang bagian

Ultrix

dari Hewlett-Packard)

CLIX Fairchild Company

HP/UX Hewlett-Packard

Tru64 Compaq (sekarang bagian dari Hewlett-Packard)

AIX International Business Machine (IBM) Corporation

Coherent Mark William Company

XENIX Microsoft Corporation (lalu dijual ke SCO)

DVIX Northern Telecom

UnixWare Novell Incorporated

SCO UNIX Santa Cruz Operation (SCO) Corporation

SCO XENIX Santa Cruz Operation (SCO) Corporation

SCO OpenServer Santa Cruz Operation (SCO) Corporation

Dynix Sequent

SINIX Siemens Corporation/Nixdorf

IRIX Silicon Graphics Incorporated (SGI)

SunOS Stanford Universities Network (SUN)

Solaris Sun Microsystems Incorporated

Eunice The Wollongong Group

Uniplus+ Unisoft Corporation

BSD UNIX Universitas California (University of California) Berkeley, Amerika Serikat

BSD/I BSDI (Berkeley Software Design Incorporated)

OSF/1 Open Software Foundation

GNU/Linux Free Software Foundation

GNU/Hurd Free Software Foundation

FreeBSD

NetBSD

OpenBSD

NextStep

Minix Universitas Terbuka Amsterdam (Vrije Universiteit Amsterdam), Belanda

Mach Universitas Carnegie Mellon (Carnegie Mellon University), Amerika Serikat

UNIX System V Lucent Technologies (Bell Labs)

QNX QNX Software Systems





UNIX terdiri atas sejumlah program (dapat instruksi untuk memperoleh hasil tertentu, yang

dirancang untuk mengontrol interaksi antara fungsi – fungsi tugas dari system operasi, diantaranya :

1. Melakukan fungsi manajemen system berkas

2. Mengendalikan berbagai sumber pada system, seperti disk dan printer.

3. Mengantar sejumlah pemakai yang menggunakan system bersamaan

4. Membentuk penjadwalan proses didalam system.

Beberapa sifat dan keistimewaan yang terdapat pada UNIX yang ditunjukkan pada

gambar 1.1 berikut ini :









A. PORTABILITAS

Sistem UNIX mudah diadaptasikan ke system computer yang lain. Sifat portabilitas ini membawa

UNIX dapat mudah dipakai, pada berbagai jenis computer. Kini Linux telah menyebar pada berbagai

jenis system. Dari Notebook, Personal Computer (PC), hingga Mainframe perusahaan. Komputer

besar seperti IBM Sun Micro System juga mengeluarkan computer yang berbasis UNIX.



Bagi pemakai, hal seperti ini sangatlah menguntungkan. Mengapa demikian ? sebab portabilitas

berarti ketidak bergantungan pada suatu perangkat keras. Ini berarti pemakai tidak perlu terpaku pada

satu vendor saja. Untuk beralih dari suatu system UNIX ke system UNIX lainnya.



Dapat dilakukan dengan mudah, hal ini tidak hanya terbatas pada sistemnya saja, melainkan juga

pada aplikasinya. Program aplikasi yang berjalan pada suatu system UNIX. Dapat dipindahkan ke

system UNIX lainnya, dengan jalan mentransfer program dan kemudian melakukan kompilasi

lagi pada system UNIX yang baru. Bahkan beberapa aplikasi bersifat kompatibel dalam bentuk

obyek, sehingga tidak diperlukan proses kompilasi.



B. MULTI USER

Multiuser berarti sejumlah orang (pemakai) dapat menggunakan system secara bersamaan dan

berbagai sumber. UNIX mendukung keperluan seperti ini, yaitu keuntungan dengan adanya sifat

MULTI USER :

a. Penhematan perangkat keras, sebab perangkat keras dapat dipakai oleh orang banyak.

b. Data dapat diakses oleh orang banyak secara serentak.

Ini berarti tidak ada penduplikasi data. Selain itu konsistensi data lebih terjamin.



C. MULTI TASKING

Seorang pemakai dapat melakukan beberapa pekerjaan dalam waktu yang bersamaan dari sebuah

terminal. Pekerjaan – pekerjaan yang tidak memerlukan interaksi dari pemakai. Bisa dilaksanakan

dilator belakang. Pemrosesan ini memungkinkan saat suatu pekerjaan sedang dilaksanakan oleh

system, pemakai dapat melakukan tugas-tugas yang lain.



D. SHELL UNIX

Shell UNIX menjadi jembatan antara pemakai dan system. Ia bertindak sebagai penerjemah perintah

yang sangat bermanfaat bagi pemakai kemampuan, Shell mencakup dua hal, yaitu :

Modus Interaktif dan

Modus Pemrograman



Pada mode interaktif, pemakai dapat memberikan perintah dan kemudian shell akan mengerjhakan

perintah yang diberikan. Hal ini dapat diulang-ulang sebab begitu shell telah selesai menjalankan

perintah, shell akan menunnggu pemakai memberikan perintah kembali.



Pada modus pemrograman, pemakai dapat menyusun suatu program yang sejumlah perintah yang

biasa disebut skrip shell. Selanjutnya, shell akan mengerjakan perintah – perintah tersebut secara

berurutan. Hal seperti ini sangat bermanfaaat untuk menangani pekerjaan yang bersifat rutin. Pada

modus ini pemakaian dapat membuat suatu prototype.



Suatu kegiatan tanpa harus menggunakan bahasa pemrograman seperti C. Baik pada mode interaktif

maupun pemrograman. Pemakai dapat dengan mudah mengarahkan keluar –keluaran perintah yang

normalnya kelayar menjadi ke suatu berkas. Bahkan pemakai dapat jhuga mengatur agar hasil suatu

perintah menjadi masukan bagi perintah yang lain.

E. UTILITAS

Sistem Operasi UNIX atas sejumlah program yang antara lain berupa utilitas-utilitas yang tersedia

pada UNIX mempunyai tugas yang bermacam-macam, antara lain berhubungan dengan :

Manajemen berkas

Penyunting berkas

Pendukung Komunikasi

Pendukung pengembangan perangkat lunak



Dengan mengkombinasikan utilitas. Untuk yang ada, pemakai dapat membuat program baru untuk

melaksanakn tugas seperti yang diharapkan hal ini dapat dilakukan dengan cepat dan mudah.



F. Masyarakat UNIX

Kalau semua pemakaian UNIX terbatas pada keinginan tertentu terutama lingkungan Universitas,

kjini UNIX juga banyak dipakai untuk menangani aplikasi bisnis. UNIX juga seringkali banyak

digunakan untuk memecahkan persoalan yang kompleks pada permasalahan statistic dan

engineering.



Saat ini banyak perkumpulan pemakai dan engineering. UNIX yang bertebaran diinternet.

I Indonesia, para pengguna Linux mempunyai kelompok tersendiri, selain itu juga muncul majalah

yaitu infolinux, perkembangan UNIX juga tidak lepas dengan lembaga – lembaga atau organisasi

yang melakukan standarisasi, antara lain :

ANSI (American National Standards Institute)

Mempunyai peranan dalam dunia UNIX. Institusi ini meyediakan standar pemrograman C yang

dibentuk melalui komite ANSI XJ311

X/OPEN

X/OPEN merupakan konsorsium International Non Provit dari sejumlah pabrik computer, seperti

Bull, ICL, Olivetti, Nixdorf, Philips dan Siemens. Didirikan pada tahun 1984, selain perusahaan

computer Eropa, pabrik computer Amerika seperti DEC,HP dan Unlsys serta AT DAN T jhuga

menjadi anggotanya, tujuan dari kelompok yang sangat berpengaruh dibenua Eropa ini adalah

mendefinisikan lingkungan untuk mendukung portabilitas perangkat lunak.



Spesifikasi system terbuka yang dikeluarkan oleh organisasi ini adalah XPG (X/OPEN Portability

Guide).

ISO (International Standards Organization)

Ikut mengembangkan beberapa standard, terutama dalam lingkup komunikasi computer.

X-Consorfium

Konsorsium ini membuat pedoman antarmuka yang berdasarkan teknologi XWINDOWS.

AT & T

AT & T mengeluarkan standar system V yang disebut SUID. Standar ini menyebutkan fasilitas-

fasilitas pada UNIX yang dijamin tidak bakal berubah pada rilis –rilis mendatang.

Some Unixes :

Here is a listing of the unixes that are present in my chart :





1BSD DesktopBSD more/BSD SPIX

2BSD Digital Unix mt Xinu SunOS

3BSD DragonFly BSD MVS/ESA OpenEdition Triance OS

4BSD Dynix NetBSD Tru64 Unix

4.4BSD Lite 1 Dynix/ptx NeXTSTEP Trusted IRIX/B

4.4BSD Lite 2 ekkoBSD NonStop-UX Trusted Solaris

386 BSD Eunice Open Desktop Trusted Xenix

Acorn RISC iX FireFly BSD Open UNIX TS

Acorn RISC Unix FreeBSD OpenBSD Tunis

AIX FreeDarwin OpenDarwin UCLA Locus

AIX PS/2 GNU OpenServer UCLA Secure Unix

AIX/370 GNU-Darwin OpenSolaris Ultrix

AIX/6000 Gnuppix GNU/Hurd-L4 OPENSTEP Ultrix 32M

AIX/ESA HPBSD OS/390 OpenEdition Ultrix-11

AIX/RT HP-UX OS/390 Unix Unicos

AMiX HP-UX BLS OSF/1 Unicos/mk

AOS Lite IBM AOS PC-BSD Unicos/mp

AOS Reno IBM IX/370 PC/IX Unicox-max

AppleTV Interactive 386/ix Plan 9 UNICS

ArchBSD Interactive IS Plurix UniSoft UniPlus

ASV iPhone OS X PWB UNIX 32V

Atari Unix iPod OS X PWB/UNIX UNIX Interactive

A/UX IRIS GL2 QNX UNIX System III

BOS IRIX QNX RTOS UNIX System IV

BRL Unix Linux QNX/Neutrino UNIX System V

BSD Net/1 Lites QUNIX UNIX System V Release 2

BSD Net/2 LSX ReliantUnix UNIX System V Release 3

BSD/386 Mac OS X Rhapsody UNIX System V Release 4

BSD/OS Mac OS X Server RISC iX UNIX System V/286

CB Unix Mach RT UNIX System V/386

Chorus MERT SCO UNIX UNIX Time-Sharing

Chorus/MiX MicroBSD SCO UnixWare System

Coherent Mini Unix SCO Xenix UnixWare

CTIX Minix SCO Xenix System V/386 UNSW

CXOs Minix-VMD Security-Enhanced Linux USG

Darwin MIPS OS RISC/os Silver OS Venix

Debian GNU/Hurd MirBSD Sinix Xenix OS

DEC OSF/1 ACP Mk Linux Sinix ReliantUnix Xinu

Dell Unix Monterey Solaris xMach

z/OS Unix System

Services



Here is now some unixes that are not [yet] in my chart. Some web sites have listed them, like this site

or this site. If you want to find more unixes, try Google :-)





ABCenix DG/UX HEP-UPX Mulplix RT/EMT Umax

ACIX DISTRIX HI-UX Munix RTUX Uniq

AD DNIX IDRIS NachOS SORIX Unisis

Altos System V DomainOS INOS NCR Unix SOX Unity

ARIX DRM System LSX NDIX Sphinx UNOS

AurOS DTIX LynxOS News-OS SPP-UX UTEK

BOS/X DVIX MachTen NUXI Stellix UTS

C Executive ENIX MacMach Oasis SUNIX UTX/32S

CLIX EP/IX MAXION/OS ONIX Super-UX UX

Consensys Unix Esix SVR4 MCS OPUS System B UXP/DS

Concentrix Eurix Micronix OS 9 Thix UZIX

ConvexOS FOR:PRO Microport SVR4 OS/MP TI System V VM/IX

CPIX FreeMiNT MicroPort Unix OSx TNIX VOLVIX

Cromix FTX Mimos PCUNIX Topix Xoftnix

CX/UX Genix MMOS PNX TOS Zeus

DC/OSx HCR MP-RAS UNIX QNIX Tropix

Dell Unix Helios MST UNIX Regulus UHC Unix



Some useful UNIX links :



 The Creation of the UNIX Operating System from Lucent.

 The Unix Oral History Project from Bell Laboratories.

 An Oral History of Unix from Princeton.

 UNIX Past from The Open Group.

 The Unix Heritage Society by Warren Toomey.

 FreeBSD Release Information from FreeBSD.

 BSD History Chart from FreeBSD.

 Formal NetBSD Releases from NetBSD.

 AIX History from Release to Release from IBM.

 Darwin/Mac OS X: The Fifth BSD from Applelust.

 Sun History from SUN.

 The History of Solaris (PDF) from UnixEd.

 The Story Behind the Solaris Operating Environment from SUN.

 HP-UX History from HP.

 Unix and Multics by Tom Van Vleck.

 Unix Start from the University of Georgia.

 Linux Kernel Archives and Linux HeadQuarters.

 20 Years of Berkeley Unix by Marshall Kirk McKusick.

 Operating System Technical Comparison from Milo.

 Chronology of Events in the History of Microcomputers by Ken Polsson.

 The BSD Family Tree from TriBUG.

 Grokline's UNIX Ownership History Project.

 ZwahlenDesign Unix History by Christian Zwahlen.

 IRIX Versions and History by Ryan Thoryk.

 Mind Map of Linux distributions by Ravi Kumar.

 GNU/Linux distro timeline by Andreas Lundqvist.

 Linux Kernel 2.6.8.1 map by OSU.

 Yet Another Linux Distro Timeline by greengrass44.

 Short UNIX History video from YouTube

 OpenSolaris builds.



Some links about some UNIX lawsuits :



 USL vs. BSDI documents from Dennis Ritchie.

 Liberal license for ancient UNIX sources from Caldera.

 SCO Files Lawsuit Against IBM from SCO.

 SCO Suspends Distribution of Linux Pending Intellectual Property Clarification from SCO.

 OSI Position Paper on the SCO-vs.-IBM Complaint from Open Source Initiative.

 A History of UNIX and UNIX Licences by Peter Salus.

 Novell Challenges SCO Position, Reiterates Support for Linux from Novell.

 Apple in court dispute over Unix from CNet.

 SCO Announces Immediate Termination of IBM's Right to Use and Distribute AIX Software and

Files for Permanent Injunction from SCO.

 SCO Registers UNIX Copyrights and Offers UNIX License from SCO.

 Red Hat Takes Aim at Infringement Claims from Red Hat.

 SCO Announces Intellectual Property License for Linux from SCO.

 IBM's counterclaims from IBM.

 The SCO Group Announces Final Termination of IBM / Sequent's Contract to Use or License

Dynix Software from SCO.

 SCO Turns It's Attention to SGI from Computer Business.

 To the Linux Community from SGI.

 OSDL releases position paper disputing SCO Linux claims from OSDL.

 Letter from SCO to IBM

 Open Letter on Copyrights from SCO.

 SCO Announces New Initiatives to Enforce Intellectual Property Rights from SCO.

 Novell's Unique Legal Rights from Novell.

 Groklaw's New Group Project -- The Timeline Project.

 SCO v. IBM from SCO.



Some links :



 Non-Unix OS timeline by Patrick Mulvany.



other links :

 Computer Languages History.

 Unix Hierarchy (an old paper).

 NeXT History (in french).

 Windows History.

 Another Chart In The Wall.

 http://www.levenez.com/unix/



Some Home Pages :









Brian Dennis Ken Linus Richard

Bill Joy Steve Jobs*

Kernighan Ritchie Thompson Torvalds Stallman



You can also find here some unix people.



* You may be wondering "Why does Steve Jobs appear in this unix history?". Simply

because he has made the best unix computer ever : a NeXTcube powered with the

NeXTSTEP operating system. And now : Mac OS X.

UNIX Past

"...the number of UNIX installations has grown to 10, with more expected..."

- Dennis Ritchie and Ken Thompson, June 1972



"... When BTL withdrew from the project, they needed to rewrite an operating

system (OS) in order to play space war on another smaller machine (a DEC

PDP-7 [Programmed Data Processor] with 4K memory for user

programs). The result was a system which a punning colleague called

UNICS (UNiplexed Information and Computing Service)--an

'emasculated Multics'; no one recalls whose idea the change to UNIX

was"

Source: A brief look at the early history



Resources: Dennis Ritchie's home page | Ken Thompson's home page









Since it began to escape from AT&T's Bell Laboratories in the early 1970's, the success of the UNIX

operating system has led to many different versions: recipients of the (at that time free) UNIX system

code all began developing their own different versions in their own, different, ways for use and

sale. Universities, research institutes, government bodies and computer companies all began using the

powerful UNIX system to develop many of the technologies which today are part of a UNIX system.



Computer aided design, manufacturing control systems, laboratory simulations, even the Internet

itself, all began life with and because of UNIX systems. Today, without UNIX systems, the Internet

would come to a screeching halt. Most telephone calls could not be made, electronic commerce would

grind to a halt and there would have never been "Jurassic Park"!



By the late 1970's, a ripple effect had come into play. By now the under- and post-graduate students

whose lab work had pioneered these new applications of technology were attaining management and

decision-making positions inside the computer system suppliers and among its customers. And they

wanted to continue using UNIX systems.



Soon all the large vendors, and many smaller ones, were marketing their own, diverging, versions of

the UNIX system optimized for their own computer architectures and boasting many different

strengths and features. Customers found that, although UNIX systems were available everywhere,

they seldom were able to interwork or co-exist without significant investment of time and effort to

make them work effectively. The trade mark UNIX was ubiquitous, but it was applied to a multitude of

different, incompatible products.



In the early 1980's, the market for UNIX systems had grown enough to be noticed by industry

analysts and researchers. Now the question was no longer "What is a UNIX system?" but "Is a UNIX

system suitable for business and commerce?"



Throughout the early and mid-1980's, the debate about the strengths and weaknesses of UNIX

systems raged, often fuelled by the utterances of the vendors themselves who sought to protect their

profitable proprietary system sales by talking UNIX systems down. And, in an effort to further

differentiate their competing UNIX system products, they kept developing and adding features of their

own.



In 1984, another factor brought added attention to UNIX systems. A group of vendors concerned

about the continuing encroachment into their markets and control of system interfaces by the larger

companies, developed the concept of "open systems."

Open systems were those that would meet agreed specifications or standards. This resulted in the

formation of X/Open Company Ltd whose remit was, and today in the guise of The Open Group

remains, to define a comprehensive open systems environment. Open systems, they declared, would

save on costs, attract a wider portfolio of applications and competition on equal terms. X/Open chose

the UNIX system as the platform for the basis of open systems.



Although UNIX was still owned by AT&T, the company did little commercially with it until the mid-

1980's. Then the spotlight of X/Open showed clearly that a single, standard version of the UNIX

system would be in the wider interests of the industry and its customers. The question now was,

"which version?".



In a move intended to unify the market in 1987, AT&T announced a pact with Sun Microsystems, the

leading proponent of the Berkeley derived strain of UNIX. However, the rest of the industry viewed the

development with considerable concern. Believing that their own markets were under threat they

clubbed together to develop their own "new" open systems operating system. Their new organization

was called the Open Software Foundation (OSF). In response to this, the AT&T/Sun faction formed

UNIX International.



The ensuing "UNIX wars" divided the system vendors between these two camps clustered around the

two dominant UNIX system technologies: AT&T's System V and the OSF system called OSF/1. In the

meantime, X/Open Company held the center ground. It continued the process of standardizing the

APIs necessary for an open operating system specification.



In addition, it looked at areas of the system beyond the operating system level where a standard

approach would add value for supplier and customer alike, developing or adopting specifications for

languages, database connectivity, networking and mainframe interworking. The results of this work

were published in successive X/Open Portability Guides.



XPG 4 was released in October 1992. During this time, X/Open had put in place a brand program

based on vendor guarantees and supported by testing. Since the publication of XPG4, X/Open has

continued to broaden the scope of open systems specifications in line with market requirements. As

the benefits of the X/Open brand became known and understood, many large organizations began

using X/Open as the basis for system design and procurement. By 1993, over $7 billion had been

spent on X/Open branded systems. By the start of 1997 that figure has risen to over $23 billion. To

date, procurements referencing the Single UNIX Specification amount to over $5.2 billion.



In early 1993, AT&T sold it UNIX System Laboratories to Novell which was looking for a heavyweight

operating system to link to its NetWare product range. At the same time, the company recognized that

vesting control of the definition (specification) and trademark with a vendor-neutral organization

would further facilitate the value of UNIX as a foundation of open systems. So the constituent parts of

the UNIX System, previously owned by a single entity are now quite separate



In 1995 SCO bought the UNIX Systems business from Novell, and UNIX system source code and

technology continues to be developed by SCO.



In 1995 X/Open introduced the UNIX 95 brand for computer systems guaranteed to meet the Single

UNIX Specification. The Single UNIX Specification brand program has now achieved critical mass:

vendors whose products have met the demanding criteria now account for the majority of UNIX

systems by value.



For over ten years, since the inception of X/Open, UNIX had been closely linked with open systems.

X/Open, now part of The Open Group, continues to develop and evolve the Single UNIX Specification

and associated brand program on behalf of the IT community. The freeing of the specification of the

interfaces from the technology is allowing many systems to support the UNIX philosophy of small,

often simple tools , that can be combined in many ways to perform often complex tasks. The stability

of the core interfaces preserves existing investment, and is allowing development of a rich set of

software tools. The Open Source movement is building on this stable foundation and is creating a

resurgence of enthusiasm for the UNIX philosophy. In many ways Open Source can be seen as the

true delivery of Open Systems that will ensure it continues to go from strength to strength.









1969 The Beginning The history of UNIX starts back in 1969, when Ken Thompson, Dennis Ritchie

and others started working on the "little-used PDP-7 in a corner" at Bell Labs

and what was to become UNIX.



1971 First Edition It had a assembler for a PDP-11/20, file system, fork(), roff and ed. It was

used for text processing of patent documents.



1973 Fourth Edition It was rewritten in C. This made it portable and changed the history of OS's.



1975 Sixth Edition UNIX leaves home. Also widely known as Version 6, this is the first to be

widely available out side of Bell Labs. The first BSD version (1.x) was derived

from V6.



1979 Seventh Edition It was a "improvement over all preceding and following Unices" [Bourne]. It

had C, UUCP and the Bourne shell. It was ported to the VAX and the kernel

was more than 40 Kilobytes (K).



1980 Xenix Microsoft introduces Xenix. 32V and 4BSD introduced.



1982 System III AT&T's UNIX System Group (USG) release System III, the first public release

outside Bell Laboratories. SunOS 1.0 ships. HP-UX introduced. Ultrix-11

Introduced.



1983 System V Computer Research Group (CRG), UNIX System Group (USG) and a third

group merge to become UNIX System Development Lab. AT&T announces

UNIX System V, the first supported release. Installed base 45,000.



1984 4.2BSD University of California at Berkeley releases 4.2BSD, includes TCP/IP, new

signals and much more. X/Open formed.



1984 SVR2 System V Release 2 introduced. At this time there are 100,000 UNIX

installations around the world.



1986 4.3BSD 4.3BSD released, including internet name server. SVID introduced. NFS

shipped. AIX announced. Installed base 250,000.

1987 SVR3 System V Release 3 including STREAMS, TLI, RFS. At this time there are

750,000 UNIX installations around the world. IRIX introduced.



1988 POSIX.1 published. Open Software Foundation (OSF) and UNIX International

(UI) formed. Ultrix 4.2 ships.



1989 AT&T UNIX Software Operation formed in preparation for spinoff of USL.

Motif 1.0 ships.



1989 SVR4 UNIX System V Release 4 ships, unifying System V, BSD and Xenix. Installed

base 1.2 million.



1990 XPG3 X/Open launches XPG3 Brand. OSF/1 debuts. Plan 9 from Bell Labs ships.



1991 UNIX System Laboratories (USL) becomes a company - majority-owned by

AT&T. Linus Torvalds commences Linux development. Solaris 1.0 debuts.



1992 SVR4.2 USL releases UNIX System V Release 4.2 (Destiny). October - XPG4 Brand

launched by X/Open. December 22nd Novell announces intent to acquire

USL. Solaris 2.0 ships.



1993 4.4BSD 4.4BSD the final release from Berkeley. June 16 Novell acquires USL



Late SVR4.2MP Novell transfers rights to the "UNIX" trademark and the Single UNIX

1993 Specification to X/Open. COSE initiative delivers "Spec 1170" to X/Open for

fasttrack. In December Novell ships SVR4.2MP , the final USL OEM release of

System V



1994 Single UNIX BSD 4.4-Lite eliminated all code claimed to infringe on USL/Novell. As the

Specification new owner of the UNIX trademark, X/Open introduces the Single UNIX

Specification (formerly Spec 1170), separating the UNIX trademark from any

actual code stream.



1995 UNIX 95 X/Open introduces the UNIX 95 branding programme for implementations of

the Single UNIX Specification. Novell sells UnixWare business line to SCO.

Digital UNIX introduced. UnixWare 2.0 ships. OpenServer 5.0 debuts.



1996 The Open Group forms as a merger of OSF and X/Open.



1997 Single UNIX The Open Group introduces Version 2 of the Single UNIX Specification,

Specification, including support for realtime, threads and 64-bit and larger processors. The

Version 2 specification is made freely available on the web. IRIX 6.4, AIX 4.3 and HP-UX

11 ship.



1998 UNIX 98 The Open Group introduces the UNIX 98 family of brands, including Base,

Workstation and Server. First UNIX 98 registered products shipped by Sun,

IBM and NCR. The Open Source movement starts to take off with

announcements from Netscape and IBM. UnixWare 7 and IRIX 6.5 ship.



1999 UNIX at 30 The UNIX system reaches its 30th anniversary. Linux 2.2 kernel released. The

Open Group and the IEEE commence joint development of a revision to

POSIX and the Single UNIX Specification. First LinuxWorld conferences. Dot

com fever on the stock markets. Tru64 UNIX ships.



2001 Single UNIX Version 3 of the Single UNIX Specification unites IEEE POSIX, The Open Group

Specification, and the industry efforts. Linux 2.4 kernel released. IT stocks face a hard time

Version 3 at the markets. The value of procurements for the UNIX brand exceeds $25

billion. AIX 5L ships.



2003 ISO/IEC The core volumes of Version 3 of the Single UNIX Specification are approved

9945:2003 as an international standard. The "Westwood" test suite ship for the UNIX 03

brand. Solaris 9.0 E ships. Linux 2.6 kernel released.

Abstract

1994 is the 25th anniversary of the invention of the UNIX kernel at Bell Labs. The following article is a

chapter in a longer paper documenting some of the events that have contributed to the development

of a Global Computer Network in the past 25 years. This article describes how the need to automate

telephone support operations in the U.S. in the late 1960s and the early 1970s nourished the birth and

developement of the UNIX operating system and how academic computer science contributed to and

gained from the development of UNIX. This article is intended as a contribution to a 25th anniversary

commemoration of the significance of the UNIX breakthrough and the lessons that can be learned for

making the next step forward.



"I don't believe UNIX is Utopia. It's just the best set of tools around." -- Dick Haight, Unix Review,

Jan. 1985, pg. 117



"What does industrial computer science research consist of?....Although work for its own sake

resulting, for example, in a paper in a learned journal is not only tolerated but welcomed, there is

strong though wonderfully subtle pressure to think about problems somehow relevant to our

corporation....Indeed, researchers love to find problems to work on; one of the advantages of doing

research in a large company is the enormous range of puzzles that turn up....Thus, computer research

at Bell Labs has always had a considerable commitment to the world...." -- Dennis Ritchie, "Reflections

on Software Research," Communications of the ACM, vol 27, no. 8, August 1984, pg. 759



"Bell had already gained some field support experience switching machines and their software.

Supporting a network of mini computers would be a significantly different problem." -- August Mohr,

"The Genesis Story," Unix Review, Jan. 1985, pg. 24



"From hence it necessarily follows...Rich and Poor, Young and Old, must must study the Art of

Number, Weight, and Measure. Sir William Petty," Political Arithmetic," in Collected Works, vol 1, pg.

261.







Part I

During the formative years in the creation of the Arpanet, which was to become the backbone to the

Global Computer Network, there were similar seminal developments taking place at the Bell

Laboratories, the Research and Development unit of the Bell System. These developments were to

have a significant impact on the future course of computer science research and networking in the

world. As early as 1957, Bell Labs found they needed an operating system for their inhouse computer

center which was then running lots of short batch jobs. Describing the situation facing the Labs, Victor

Vyssotsky, who had been involved the techanical head of the Multics project at Bell Labs and later

Executive Director of Research in the Information Systems Division of AT&T Bell Labs, explains, " We

just couldn't take the time to get them on and off the machine manually. We needed an operating

system to sequence jobs through and control machine resources." (from "Putting Unix in Perspective",

Interview with Victor Vyssotsky, by Ned Pierce, in Unix Review, Jan. 1985, pg. 59)



The BESYS operating system was created at Bell Labs to deal with their inhouse needs. When asked

by others outside the labs to make a copy available, they did so but with no obligation to provide

support. "There was no support when we shipped a BESYS tape to somebody," Vyssotsky recalls, "we

would answer reasonable questions over the telephone. If they found troubles or we found troubles,

we would provide fixes." (Ibid., pg. 59)



By 1964, however, the Labs was adopting third generation computer equipment and had to decide

whether they would build their own operating system or go with one that was built outside the Labs.

Vyssotsky recounts the process of deliberation at the time, "Through a rather murky process of

internal deliberation we decided to join forces with General Electric and MIT to create Multics," he

explains. The Labs planned to use the Multics operating system "as a mainstay for Bell Laboratories

internal service computing in precisely the way that we had used the BESYS operating system." (Ibid.,

pg. 59)



The collaborative project by GE, MIT and AT&T to create a computer operating system that would be

called Multics (1965-68) was to "show that general-purpose, multiuser, timesharing systems were

viable." (See Douglas Comer, "Pervasive Unix: Cause for Celebration," Unix Review, October, 1985,

pg. 42) Based on the results of research gained at MIT using the Compatible Time-Sharing System

(CTSS), AT&T and G.E. agreed to work with MIT to build a "new hardware, a new operating system, a

new file system, and a new user interface." (Ibid.) Though the project proceeded slowly and it took

several additional years to develop Multics, Doug Comer, a Professor of Computer Science at Purdue

University, explains that "fundamental issues were uncovered, new approaches were explored and

new mechanisms were invented." (Ibid) The most important, he explains, was that "participants and

observers alike became devoted to a new form of computing (the interactive, multiuser, timesharing

system.). As a result, the Multics project dominated computer systems research for many years, and

many of its results are still considered seminal." (Ibid.)



Evaluating the influence of the MULTICS research on Bell Labs researchers, Comer points out that top

researchers in computer science and mathematics from the world's premier industrial research center,

Bell Labs, were able to work with top researchers from academia. When Ken Thompson, Dennis

Ritchie and their "Bell Laboratories colleagues," writes Comer, "later began work on their own

implementation of a Multics-like time-sharing system, they drew heavily from the Multics experience.

So, despite popular myth, UNIX was not an accidental discovery at all -- it evolved directly from

experiences with academic research." (Ibid., pg. 41-42)



By 1969, however, AT&T made a decision to withdraw from the project. Describing that period, Dennis

Ritchie, another of the inventors of unix at Bell Labs writes, "By 1969, Bell Labs management, and

even the researchers came to believe that the promises of Multics could be fulfilled only too late and

too expensively." (from Dennis Ritchie, "The Development of the C Language," ACM, presented at

Second History of Programming Languages conference, Cambridge, Mass, April 1993, pg. 1)



Detailing the reasons for the decision, Vyssotsky responds, "It turned out that from our point of view

the Multics effort simply went awry. In the first place, we were naive about how hard it was going to

be to create an operating system as ambitious as Multics. It was the familiar second system

syndrome. You put in everything you wished you'd had in the other one." (Vyssotsky, pg. 59) Also he

details how GE, MIT, and AT&T each had different goals for the project, which made it difficult for

them to work together. While GE wanted to develop Multics to "strengthen its product line," MIT

wanted Multics "to advance the state of art" of computing, and Bell Labs' purpose was to have a good

environment for our people to work in." (Ibid.) Given these different objectives, Vyssotsky explains,

"It turned out that under the stress of slipping schedules and the increasing realization that we had

difficulty agreeing on a common course of action, we ended up simply pulling out of Multics. We said,

`OK, it's too wet to plow. We aren't going to get from here to there'." (Ibid.)



When the decision to pull out of the Multics project was made by AT&T, Vyssotsky explains there was

an operating system that he called a "precursor of Multics" running on their GE 645 computer. "From

the point of view of the few people who could use it," he notes, "it was a very nice programming

environment. In particular, Ken Thompson thought it was a very nice programming environment."

(Ibid.)



However, when Bell Labs pulled out of the Multics project they took the Multics precursor off their GE

645 computer and put up GECOS, a much less state of the art operating system. "If you were an old

line Spanish American War type computer user like me," Vyssotsky admits, "GECOS was a perfectly

satisfactory system for getting from here to there in a well-designed application. You knew what it was

going to do." (Ibid., pg. 60)

But for a research computer scientist like Ken Thompson, GECOS was inadequate. According to

Vyssotsky, "It was nowhere near as satisfactory if you were trying to do things that were technically

difficult and imperfectly defined, which is the main task of research." (Ibid.)



Not only for Ken Thompson's work, but for the research purposes of the Labs, an operating system

more like what Multics had promised was needed. "I wanted a much more flexible system than BESYS

or GECOS or OS360 or anything I could see," Vyssotsky recounts, "I had various things that I was

trying to do with computers that were just plain hard to do with existing operating systems." (Ibid.)



"Moreover, for people like Ken Thompson," Vyssotsky emphasizes, "having this embryonic version of

Multics taken away and GECOS slapped down in its place was something of a disaster. Suddenly they

were back to square one." (Ibid.)



With the loss of the Multics experimental operating system, Ken Thompson, Dennis Ritchie and the

others at the Labs who began work on UNIX, realized they had to focus on creating an operating

system for their programming needs. "I don't think," Vyssotsky relates, "that either of them was

particularly fascinated by operating systems until they found themselves cast back upon GECOS. They

sort of got interested in the subject out of self defense." (Ibid.)



In his account of this period, Dennis Ritchie writes, "Even before the GE-645 Multics machine was

removed from the premises, an informal group, led primarily by Ken Thompson, had begun

investigating alternatives." (Ritchie, pg. 1)



Thompson and Ritchie presented Bell Labs with proposals to buy them a computer so they could build

their own interactive, time sharing operating system. Their proposals weren't acted on. Eventually,

Ken Thompson found a little used and obsolete PDP 7 computer. According to Vyssotsky the orphaned

PDP-7 computer was a tiny machine, "more nearly in the class of a Commodore 64 than the class of a

PC-AT." (Vyssotsky, pg. 60)



Ritchie explains that Ken Thompson was attempting to create a programming environment which

included "many of the innovative aspects of Multics," such as "an explicit notion of a process as a

locus of control, a tree-structured file system, a command interpreter as a user-level program, simple

representation of text files, and generalized access to devices." (Ritchie, pg. 1-2)



Describing the primitive conditions that Thompson faced, Ritchie writes, "At the start, Thompson "did

not even program on the PDP itself, but instead used a set of macros for the GEMAP assembler on a

GE-635 machine. A postprocesser generated a paper tape readable by the PDP-7. These tapes were

carried from the GE machine to the PDP-7 for testing until a primitive UNIX kernel, an editor, an

assembler, a simple shell (command interpreter), and a few utilities (like the Unix rm, cat, cp

commands) were completed. At this point, the operating system was self- supporting; programs could

be written and tested without resort to paper tape, and development continued on the PDP-7 itself."

(Ibid., pg 2)



The result, Ritchie explains, was that "Thompson's PDP-7 assembler outdid even DEC's in simplicity; it

evaluated expressions and emitted the corresponding bits. There were no libraries, no loader or link

editor: the entire source of a program was presented to the assembler, and the output file -- with a

fixed name -- that emerged was directly executable. (Ibid., pg. 2)



The operating system was named UNIX, to distinguish it from the complexity of MULTICS. Vyssotsky

recalls that in addition to Thompson and Ritchie, "the two most active contributors at that stage were

Joe Ossanna and Rudd Canaday. I should also add," he explains, "that Doug McIlroy was

tremendously influential on their thinking." (Vyssotsky, pg.60) Vyssotsky elaborates, "I don't think

that Doug actually contributed much of the programming, but for example, the appearance of pipes in

UNIX was clearly a result of Doug's discussions with Ken and Dennis." (Ibid.) Ken put them in, but "it

was McIlroy who said, "Look you ought to do it. Pipes, like most things in UNIX were not a radically

new idea. Co-routines had, after all, shown up in SIMULA by the end of 1967." (Ibid.)

As work continued on the Bell Labs operating system, the researchers developed a set of principles to

guide their work. Among these principles were:



"(i) Make each program do one thing well. To do a new job, build afresh rather than complicate old

programs by adding new features.



(ii) Expect the output of every program to become the input to another, as yet unknown, program.

Don't clutter output with extraneous information. Avoid stringently columnar or binary input formats.

Don't insist on interactive input.



(iii)Design and build software, even operating systems, to be tried early, ideally within weeks. Don't

hesitate to throw away the clumsy parts and rebuild them.



(iv)Use tools in preference to unskilled help to lighten a programming task, even if you have to detour

to build the tools and expect to throw some of them out after you've finished using them."



(from M.D. McIlroy, E.N.Pinson, and B.A. Tague "Unix Time-Sharing System Forward", The Bell

System Technical Jounal, July -Aug 1978 vol 57, number 6 part 2, pg. 1902)



By 1970, Ritchie writes, the UNIX researchers were "able to acquire a new DEC PDP-11. The

processor," he remembers, "was among the first of its line delivered by DEC, and three months passed

before its disk arrived." (Ritchie, pg. 5) Soon after the machine's arrival and while "still waiting for the

disk, Thompson," Ritchie recalls, "recoded the Unix kernel and some basic commands in PDP assembly

language. Of the 24K bytes of memory on the machine, the earliest PDP-11 Unix system used 12K

bytes for the operating system, a tiny space for user programs, and the remainder as a RAM disk."

(Ibid., pg. 5) "By 1971," Ritchie writes, "our miniature computer center was beginning to have users.

We all wanted to create interesting software more easily. Using assembler was dreary enough that B,

despite its performance problems, had been supplemented by a small library of useful service routines

and was being used for more and more new programs." (Ibid., pg. 6)



"C came into being in the years 1969-1973," Ritchie explains, "in parallel with the early development

of the Unix operating system; the most creative period occurred during 1972." (Ibid., pg. 1) "By early

1973," the essential of modern C were complete. The language and compiler were strong enough to

permit us to rewrite the kernel for the PDP-11 in C during the summer of that year. (Thompson had

made a brief attempt to produce a system coded in an early version of C -- before structures -- in

1972, but gave up the effort.)" (Ibid.)



Each program they built developed some simple capability and they called that program a tool. They

wanted the programs to be fun to use and to be helpful to programmers. Describing the achievements

of the lab, Doug McIlroy, one of the researchers and Thompson's Dept Head when they created UNIX,

describes the atmosphere at the lab:



"Constant discussions honed the system....Should tools usually accept output file names? How to

handle demountable media? How to manipulate addresses in a higher level language? How to

minimize the information deducible from a rejected login? Peer pressure and simple pride in

workmanship caused gobs of code to be rewritten or discarded as better or more basic ideas emerged.

Professional rivalry and protection of turf were practically unknown: so many good things were

happening that nobody needed to be proprietary about innovations." [from M.D. McIlroy, "Unix on My

Mind," Proc. Virginia Computer Users Conference, vol 21, Sept. 1991, Blacksburg, pg. 1-6.]



The research done at the Labs was concerned with using the computer to automate programming

tasks. By a scientific approach to their work and careful attention to detail, Bell Labs researchers

determined the essential elements in a design and then created a program to do as simple a job as

possible. These simple computer automation tools would then be available to build programs to do

more complicated tasks.

They created a UNIX kernel accompanied by a toolbox of programs that could be used by others at

Bell Labs. The kernel consisted of about 11,000 lines of code. Eventually, 10,000 lines of the code

were rewritten in C and thus could be transported to other computer systems. "The kernel," Ken

Thompson writes, "is the only UNIX code that cannot be substituted by a user to his own liking. For

this reason, the kernel should make as few real decisions as possible." (from K. Thompson, "UNIX

Implementation", "The Bell System Technical Journal," vol 57, No. 6, July-August 1978, pg. 1931)



Thompson describes creating the kernel:



"What is or is not implemented in the kernel represents both a great responsibility and a great power.

It is a soap-box platform on `the way things should be done.' Even so, if `the way' is too radical, no

one will follow it. Every important decision was weighed carefully. Throughout, simplicity has been

substituted for efficiency. Complex algorithms are used only if their complexity can be localized."

(Ibid., pg. 1931-2)



The kernel was conceived as what was essential and other features were left to be developed as part

of the tools or software that would be available. Thompson explains:



The UNIX kernel is an I/O multiplexer more than a complete operating system. This is as it should be.

Because of this outlook, many features are found in most other operating systems that are missing

from the UNIX kernel. For example, the UNIX kernel does not support file access methods, file

disposition, file formats, file maximum sizes, spooling, command language, logical records, physical

records, assignment of logical file names, logical file names, more than one character set, an

operator's console, an operator, log-in, or log-out. Many of these things are symptoms rather than

features. Many of these things are implemented in user software using the kernel as a tool. A good

example of this is the command language. Maintenance of such code is as easy as maintaining user

code. The idea of implementing "system" code and general user primitives comes directly from

MULTICS." (Ibid., pg. 1945-6)



Evaluating the achievement represented by the kernel, Vyssotsky explains, "I would say that the

greatest intellectual achievement embedded in UNIX is the success Ken Thompson and Dennis Ritchie

had in understanding how much you could leave out of an operating system without impairing its

capability." (Vyssotsky, pg. 60-62)



"To some extent," he continues, "that was forced by the fact that they were running on small

machines. It may also have been a reaction to the complexity of Multics...It took some very clear

thinking on the part of the creators of UNIX to realize that most of that stuff didn't have anything to

do with the operating system and didn't have to be included." (Ibid., pg. 62)



Eventually the unix operating system was adopted in other departments at AT&T to do a variety of

work. "There is one piece of history that I think is very important to understand," explains Vyssotsky,

"When UNIX evolved within Bell Laboratories, it was not a result of some deliberate management

initiative. It spread through channels of technical need and technical contact....This was typical of the

way UNIX spread around Bell Laboratories. You had MTSS Supervisors and Department Heads saying

we had to go in this direction while Executive Directors were saying, `Well, I'm awful nervous about it.

But if you guys say that is what we've got to do, I'll back your play." (Ibid, pg. 62-64)



Explaining the importance of how unix was implemented organizationally within the Bell System,

Vyssotsky comments, "There are a lot of organizations that do not work that way. I brought out that

little hunk of history to point out that the spread and success of UNIX, first in the Bell organizations

and then in the rest of the world, was due to the fact that it was used, modified, and tinkered up in a

whole variety of organizations within Bell Laboratories....The refinement of UNIX was not done as the

result of some management initiative or council of vice presidents. It was the supervisors saying, "This

thing is already better than our other options and flexible enough for us to make it a go." (Ibid. pg.

64)

During the same period that the search for an operating system to replace the promise of Multics had

begun by Bell Labs computer programming researchers, the Bell System was faced with the problem

of automating their telephone operations using minicomputers. Describing the problem facing the Bell

System during this period, August Mohr, in an article in Unix Review, "The Genesis Story" (January

1985, pg. 22), writes "Bell was starting to perceive the need for minicomputer support for its

telephone operations." (Mohr was editor of /usr/group 's CommUNIXations newsletter.)



"The discovery that we had the need -- or actually, the opportunity -- in the early '70s to use these

minis to support telephone company operations encouraged us to work with the UNIX system,"

confirms Berkley Tague. ("Interview with Berkley Tague," Unix Review, June 1985, pg. 59) "We knew

we could do a better job with maintenance, traffic control, repair, and accounting applications." (Ibid.)



"The existing systems were made up of people and paper," he relates, "The phone business was in

danger of being overwhelmed in the early '70s with the boom of the '60s. There was a big interest

then in using computers to help manage that part of the business. We wanted to get rid of all of those

Rolodex files and help those guys who had to pack instruments and parts back and forth just to keep

things going."



During the late 1960's, AT&T was under pressure from regulatory bodies like the New York Public

Service Commission, to solve what was termed as a "service crisis." (See especially, "Wrong Number,"

by Alan Stone, N.Y., 1989, pg. 145) This pressure encouraged AT&T to explore technological advances

that would make its support operations more efficient.



Tague explains that there had been local mechanization of processes but not large scale integration of

the mechanization. "Take repair," he suggests as an example, "A lot of it deals with keeping the

connections straight between what we call the main distribution frames in the central office and the

wires that tie residential telephones into the switch. Prior to the use of computers, `mechanization'

consisted of somebody on a remote test bench using electrical meters and instruments to test lines.

To get those connections made, an intercom was used to broadcast requests to a bunch of people

standing around with alligator clips and soldering irons down in the wire center. The requests went

something like, `Would you kindly connect jumper x to terminal y?' to get testing done." (Ibid, pg.

60)



Tague describes how the mini computer made it possible to automate this process. "First, we were

able to get more instructions out to the people actually making the connections. And, at the other end,

we were able to centralize information about entire systems and end-to-end circuits."



"This meant," he elaborates, "that if I was responsible for keeping the Superbowl broadcast on the air

between New Orleans and New York, I could -- with a single console -- view all the connections on

that link and have access to all of the information automatically being collected about it. If something

broke, I could immediately recognize that and orchestrate the process of getting it repaired. The

repair itself would ultimately be left to a person working in much the same way as before." (Ibid.)



This change affected workers like those "plugging in an alternate module or pulling a manual switch

and going to a backup system," he clarifies. "Suddenly, their work became much faster because the

information was all in one place -- unlike earlier days when eight guys would have had to collect and

sort out the trouble data in a series of phone calls before actually being able to get down to the

business of working on solutions." (Ibid.)



Other applications were affected as well, he explains. "in areas like cable and wiring layouts. The

algorithms applying to these layouts were well known here at the Laboratories, but they were not the

sort of thing you could usefully put into a manual. They were, however, easily put into computer

programs. Optimum layouts could thus be generated using the computer to assess all the complicated

engineering tradeoffs." (Ibid.)

Not only did they need a good programming environment, but Mohr emphasized that the Bell System

applications required, "Operations Systems, not Operating Systems. With the number of systems

under consideration, the possiblity of being tied to a single vendor, or having each site tied to a

different vendor, induced a kind of paranoia. There just had to be another way." (Mohr, pg. 22)



Tague elaborates, "If we faced the phone company with 18 different vendors and 19 different

environments, neither the developers nor the phone companies were going to be able to maintain the

thing once it got out in the field in large numbers. As a planner, I was trying to focus on a few

vendors. At that time, it was primarily Hewlett-Packard and DEC, plus a few IBM systems." (Tague,

pg. 60)



This led to the realization of a need for an operating system. "Vendor operating systems were

available as a starting point", he adds "but a number of people had already started to build their own

when they realized that what the vendors had was not adequate." (Ibid.)



Tague explains that his role in planning for the transition meant that he tried to warn those involved

that they would need a good software environment to do the development of the software needed to

use the mini computers for these new roles.



"I observed," he comments, "that people were starting to put these minis out in the operating

company, and saw that it was an area of both opportunity and potential problems. I found," he adds,

"that some of the people in development had never built an operating system for any computer

before; many of them had very little software background. They were coming out of hardware

development and telephone technology backgrounds, and yet were starting to build their own

operating systems. Having been through that phase of the business myself, it seemed silly to go

through it another hundred times, so I started pushing the UNIX operating system into these

projects." (Mohr, pg. 22)



Tague was familiar with UNIX and its capabilities and tells the variety of reasons ranging from

inadequate file systems, to inadequate performance, to poor user interface that he recommended the

initial adoption of UNIX to start the work. "We sold those first application developers on UNIX simply

by pointing out that the first job they were going to have to do was program development and that by

using the UNIX operating system they could get that job done more easily. I did not argue with them

about whether or not they should develop their own operating systems -- knowing in my heart of

hearts that once they got on UNIX they wouldn't be able to do any better with the experience and the

schedules they had. Indeed, that is what happened." (Tague, pg. 60-1)



Tague's backing of UNIX, as a development system for operations, was not just a personal preference.

"I had every confidence in the people who built it because I'd worked with them on Multics," he

explained. "With their experience and training, I figured they could build a much better operating

system than somebody who's building one for the first time, no matter how smart that person is."

(Mohr, pg 22)



Tague describes how UNIX had been functioning in the research environment and thus had

demonstrated that it could be used as a beginning basis for this important job.



Also, he knew that there would be a need to develop a support system for those operating companies

around the country that would begin to use UNIX: "We were starting to put these things in the

operating companies all around the countryside," explains Tague, "and the prospects were that there

were going to be several hundred minis over the next few years that were going to have to be

maintained with all their software and hardware." (Ibid., pg. 24)



Bell had created the needed field support system to maintain the electronic switching machines and

software that were now being upgraded. "Supporting a network of minicomputers would be a

significantly different problem, though," August Mohr explains. "Maintaining an operating system is

not at all like maintaining an electronic switching system. The minicomputers had different reliablity

demands, requiring a different support structure in the organization -- one that did not yet exist in any

form. In many ways, the operations group was breaking new ground," writes Mohr. (Ibid.)



As head of the Computer Planning Department, Tague had been responsible for systems engineering.

In 1971 Tague garnered support for UNIX to be adopted. Then he pushed to have UNIX made the

internal standard and to provide central support through his organization. By September, 1973, he

was able to form a development organization to provide support for a "standard Unix." This group,

called UNIX Development Support worked with Bell Labs Research. Though the two groups sometimes

diverged regarding their priorities, Mohr explains that they agreed on the need for UNIX portability.



According to Mohr, "Tague foresaw the possiblity of UNIX becoming an inteface between hardware and

software that would allow applications to keep running while the hardware underneath was changing."

(Ibid., pg. 24)



"From the support point of view," he continues, "such a capability would solve a very important

problem. Without UNIX and its potential portability, the people building the operations support

systems were faced with selecting an outside vendor that could supply the hardware on which to get

their devlopment done. Once that was complete, they would be locked into that vendor." However,

according to Mohr, "Portability obviated this limitation and offered a number of other advantages.

When making a hardware upgrade, even to equipment from the same vendor, there are variations

version to version. That could cost a lot of money in software revisions unless there were some level

of portability already written into the scenario." (Ibid., pg. 24-25)



Just as Operating Systems people in the Bell system had come to recognize the need for portability in

a computer operating system, Ritchie and Thompson and the other programming researchers at Bell

Labs had created the computer language C and rewritten the majority of the UNIX kernel in C and

thus had made the important breakthrough in creating a computer operating system that was not

machine dependent. Describing their breakthrough with UNIX, Thompson and Ritchie presented their

first paper on UNIX at the Symposium on Operating Systems Principles, IBM Thomas J. Watson

Research Center, Yorktown Heights, New York, October 15-17, 1973, (reference from UNIX(tm) Time-

Sharing System: Unix Programmers Manual, 7th edition, vol 2, Murray Hill, f/n pg 20). See also

Ritchie's account of the creation of C by early 1973 in "The Development of the C Language," ACM,

presented at Second History of Programming Languages conference, Cambridge, Mass, April 1993, pg.

1) Describing this important achievement by Bell Labs researchers, Mohr writes, "the integral

portability of the system developed by Research proved adequate to make UNIX portable over a wide

range of hardware."









Part II

With the research breakthrough of a portable computer operating system, "the first UNIX applications

were installed in 1973 on a system involved in updating directory information and intercepting calls to

numbers that had been changed. The automatic intercept system was delivered for use on early PDP-

11s. This was essentially the first time UNIX was used to support an actual, ongoing operating

business." (Mohr, pg. 26)



Different operations sites had taken on to create computer software to meet similar needs, such as

print spooling, mail, help, etc. Tague's group's assignment was to gather the software and to

determine what the standard should be and send the standard back out to the sites. Tague credits the

technical strength of UNIX for making software standardization possible. UNIX "made it easy," he

explains, "to get the right stuff in without upsetting the whole world."

Establishing a standard UNIX, according to Tague, was "a process of negotiation and compromise with

the UNIX-using community -- not a unilateral decision." (Ibid.) His group and the people at the variety

of Bell sites "often ended up arguing things out until everybody understood the issues and a suitable

compromise was made," he relates. (Ibid.)



Tague describes how his group the UNIX Support Group (USG) which had been established in

September of 1973 "released the first C version of UNIX internally. [Generic I, II, and III were

produced by these intitial efforts.] In parallel with our efforts," he notes, "the Programmer's

Workbench gang under Rudd Canaday worked the same vein over in the BIS [Business Information

Systems] area. (Tague, pg. 61)



The application of UNIX to automating the operating systems at Bell also involved automating the

monitoring, measurement, help for routing and ensuring quality of calls. That was a "tall order," writes

Tony Culwick, "given the standards people have come to expect...but the fact remains that the

fundamental integrity of the national telecommunications network depends on more than 1000 real-

time, mini-computer-based systems that are built on a version of the UNIX operating system." (from

"Reach out and Touch the Unix System," by Tony Cuilwik, "Unix Review," June 1985, pg. 50. Cuilwik

was the head of the Operations Systems Development Department at Bell Laborators and then

director of AT&T Information Systems Laboratories in Columbus, Ohio.)



Describing the functions that UNIX makes possible, he writes, "Among the varied and wide-ranging

functions these systems perform are network performance measurement, automated network testing,

circuit order planning, circuit order record- keeping, automated trouble detection, automated or

directed trouble repair, service quality assurance, quality control, inventory control, customer record-

keeping, and customer billing -- as well as any number of other operational and administrative

functions. These functions all require," Cuilwik explains, "the ability to present data to users in real-

time." (Ibid.)



The object in these systems is "to guarantee a minimal acceptable human response time. This

challenge has been met by tuning the underlying UNIX system." (Ibid.)



Cuilwik describes how the need for such real time applications was determined in the 1969-70 period,

just when UNIX was being created. Development, he reports, "began in earnest in 1971. Early in this

period," he writes, "it was determined that an operating system and environment should be provided

to system designers, who would then only need to develop application- specific software." By 1974, he

reports "several sites had chosen the UNIX operating system as this development environment. A few,

meanwhile, had also selected it as an execution environment and were busy designing enhancements

and improvements for the system." (Ibid.)



The need was also recognized for "a common operating environment between projects." (Ibid.,pg. 50-

52) "Major additions" he writes, "necessary to move the timeshared UNIX system into real-time

applications included interprocess communications (name pipes, messages, semaphores, and shared

memory), file access (logical file system, record access system), error recovery, power fail/restart,

and line and terminal disciplines. These additions were developed, integrated or donated to the

common good by people developing specific systems. By 1979," he reviews, "there was an enhanced

real-time UNIX system that was centrally supported, offering a collection of tools and a number of

human/machine interface designs to protect system users from direct contact with UNIX primitives."

(Ibid, pg. 52)



The process of the development of UNIX so it contained such a range of options involves its adoption

and development by the academic research community. Early in its development, word of the UNIX

operating system and its advantages spread outside of Bell Labs. (Several sources attribute this to the

paper that Ritchie and Thompson presented on UNIX at the Symposium on Operating Principles at

Purdue in November, 1973. See for example McKusick, "A Berkeley Odyssey" in Unix Review, January

1985, pg. 31, and Peter Ivanov, "Interview with John Lions", Unix Review, October, 1985, pg. 51,

about the publication of the paper in July 1974 in the "Communications of the ACM".) The labs made

the software available to academic institutions at a very small charge. For example, John Lions, a

faculty member in the Department of Computer Science at the University of New South Wales, in

Australia, reported that his school was able to acquire a copy of research UNIX Edition 5 for $150

($110 Australian) in December, 1974, including tape and manuals. (See "An Interview with John

Lions," in Unix Review, October, 1985, pg. 51)



UNIX was attractive to the academic Computer Science community for several reasons. John

Stoneback, describing these reasons, writes:



"UNIX came into many CS departments largely because it was the only powerful interactive system

that could run on the sort of hardware (PDP-11s) that universities could afford in the mid '70s. In

addition, UNIX itself was very inexpensive. Since source code was provided, it was a system that could

be shaped to the requirements of a particular installation. It was written in a language considerably

more attractive than assembly, and it was small enough to be studied and understood by individuals."

(from John Stoneback, "The Collegiate Community," Unix Review, October 1985, pg. 27)



Describing how research UNIX helped make it possible for academic computer science departments to

establish and develop research in computer science, he writes:



"UNIX had another appealing virtue that many may have recognized only after the fact -- its

faithfulness to the prevailing mid-'70s philosophy of software design and development. Not only was

UNIX proof that real software could be built the way many said it could, but it lent credibility to a

science that was struggling to establish itself as a science. Faculty could use UNIX and teach about it

at the same time. In most respects, the system exemplified good computer science. It provided a

clean and powerful user interface and tools that promoted and encouraged the development of

software. The fact that it was written in C allowed actual code to be presented and discussed, and

made it possible to lift textbook examples into the real world. Obviously, UNIX was destined to grow in

the academic community. (Ibid., pg. 27)



In trying to teach his students the essentials of a good operating system, John Lions describes how he

prepared a booklet containing the source files for a version of Edition 6 of research UNIX in 1976 and

the following year completed a set of explanatory notes to introduce students to the code. "Writing

these," he recounts, "was a real learning exercise for me. By slowly and methodically surveying the

whole kernel, I came to understand things that others had overlooked."



This ability to present his students with a real example of an operating system kernel was a

breakthrough. Lions writes:



Before I wrote my notes on UNIX, most people thought of operating systems as huge and

inaccessible. Because I had been at Burroughs, I knew that people could get to learn a whole program

if they spent some time working at it. I knew it would be possible for one person to effectively become

an expert on the whole system. The Edition 6 UNIX code contained less than 10,000 lines, which

positioned it nicely to become the first really accessible operating system." (Lions, pg. 52-3)



In keeping true to the UNIX community spirit of helping each other, Lions wrote a letter to Mel

Ferentz, Lou Katz and others from Usenix and offered to make copies of his notes available to others.

After some negotiation with Western Electric over the patent licensing, he distributed the notes titled

"A Commentary on the UNIX Operating System" to others with UNIX licenses on the conditions that

Western Electric had set out. (Ibid., pg. 53)



Lions describes how he helped to develop a UNIX tool "pack" which was eventually combined with

tools created at Bell Labs called huff and unhuff and distributed as a standard UNIX command. He and

others from his college were invited to spend periods of time at Bell Labs to work with the unix

researchers there. (See for example, pg. 57)



Describing how research UNIX and its adoption at academic institutions has served to develop

computer science, Doug Comer writes:

The use of UNIX as a basis for operating systems research has produced three highly desirable

consequences. First, the availability of a common system allowed researchers to reproduce and verify

each others' experiments. Such verification is the essence of science. Second, having a solid base of

systems software made it possible for experimenters to build on the work of others and to tackle

significant ideas without wasting time developing all the pieces from scratch. Such a basis is

prerequisite to productive research. Third, the use of a single system as both a research vehicle and a

conventional source of computing allowed researchers to move results from the laboratory to the

production environment quickly. Such quick transition is mandatory of state-of-the-art computing."

(Comer, pg. 44)



Not only did research UNIX serve the academic community, but the contributions of the academic

community were incorporated into research UNIX. An example, is the work by Babaoglu and Porker at

UC Berkeley of designing a virtual memory version of UNIX for the VAX computer which was later

optimized by Bill Joy and incorporated into a release of UNIX. (Ibid.)



Academic contributions which were incorporated into research UNIX included the vi editor which was

created by Bill Joy at University of California at Berkeley. Describing this phenomena Comer writes:



"Many universities contributed to UNIX. At the University of Toronto, the department acquired a 200-

dt-per-inch printer/plotter and built software that used the printer to simulate a phototypesetter. At

Yale University, students and computer scientists modified the UNIX shell. At Purdue University, the

Electrical Engineering Department made major improvements in performance, producing a version of

UNIX that supported a larger number of users. Purdue also developed one of the first UNIX computer

networks. At the University of California at Berkeley, students developed a new shell and dozens of

smaller utilities. By the late 1970s, when Bell Labs released Version 7 UNIX, it was clear that the

system solved the computing problems of many departments, and that it incorporated many of the

ideas that had arisen in universities. The end result was a strengthened system. A tide of ideas had

started a new cycle, flowing from academia to an industrial laboratory, back to academia, and finally

moving on to a growing number of commercial sites." (Comer, pg. 43)



In the process of using UNIX within Bell Labs, bugs would be discovered and reported to the

programmers, or new applications would be created by the departments using the programs for their

own tasks. The research labs would need to provide maintenance and updating of software as well as

getting the bug reports to the programmer and sending out fixes.



To automate this maintenance work, Mike Lesk, one of the Bell Labs computer researchers, proposed

an automated maintenance system that would make it possible to have the research computer call up

the computers in the departments and automatically deliver updated software and test that it worked

on the remote computer.



As part of the automated maintenance system, Lesk created a UNIX program called UUCP (UNIX to

UNIX copy) which made it possible to use a phone or hard wired connection to have one computer poll

another computer and deliver the software.



Describing the considerations by Bell Labs at this time, Vyssotky explains, (from Vyssotsky, pg. 64)"

In 1976, there were those three versions of UNIX. The Change Control Process on all three of those

versions was such that, at any moment in time, the people who were programming could tell what

changes had gotten in and what changes were scheduled to go in. However, it was still a little hard for

the users to tell what they were getting. It wasn't until 1978 that we had anything that I would

consider to be a reasonable configuration management process of UNIX. That was the point at which

we finally realized we had something which, like it or not, was a major product. So we said, `Given

that it is a major product, there can be no horsing around.' We could no longer regard it as something

in the underbrush. We had to regularize our arrangements. We set up a process for configuration

management and we focused the thing in the direction of a coherent system." (Vyssorsky, pg. 64-68)



But he emphasizes, "Perhaps, the most important one was that UNIX was being used as the operating

system basis for a bunch of operations support systems in the Bell Operating Companies and we could

not afford to let those support systems go down. We put configuration management and all of the

associated paraphernalia in place about 1978. (Ibid., pg. 68)



Lions says about the freezing, "Much of the development of UNIX in Bell Laboratories occurred before

1978. After Edition 7, many of the original group went off to do other things. At the same time, UNIX

was becoming important within the Bell System, which gave rise to a support group whose charter

was to develop a polished and stable version of UNIX. This group was less interested in innovation

than in stabilizing the system. Universities have simply picked up the slack. (Lions, pg. 56)



Meanwhile, academic UNIX users had to do their own software maintenance. Lions describes how a

community of academic unix users grew up who were willing to help each other.



"One very positive effect, however" writes Lions, "is that the number of universities using UNIX and

the lack of any formal support forced us to band together into AUUG. (Australian unix users group -

ed) The connections we have thereby made have created and cemented bonds between people in the

different departments. UNIX has been a very unifying influence for computer science within Australia.

This cannot be overestimated." (Ibid., pg. 57)



UUCP made such exchanges easier. It was included with the Version 7 UNIX, which was made

available to the academic community outside of Bell Labs. UUCP made it possible for UNIX users to

communicate with each other even when they were at spatially distant locations.



Using UUCP, the UNIX community was able to pioneer still another advance, Usenet News. "Though

large institutions have been able to avail themselves of communications networks such as ARPANET,

the UNIX community has made inexpensive electronic communication available to all of its members

via Usenet," writes Stoneback, "A community that already had so much in common," he explains,

"was strengthened and enhanced by the ability to move software easily among locations and to

maintain a reasonable electronic mail system. The cost of this network has been borne at least in part

by private industry, thus mitigating expenses for the users themselves. The Usenet network stands

today as a clear sign that the UNIX community is solidly in place. It now includes numerous corporate

members providing universities on the network with the added advantage of pooling academic

researchers, industrial developers, industrial researchers and regular users. Combined with a

functional, cheap electronic communication system, Usenet offers the academic community unique

advantages." (Stoneback, pg. 26)



"The network," he points out, "is the direct result of a community that supports its members and in

turn is nurtured by the ones it serves. The community is a reasonably democratic one, reasonably

open to new ideas, resonably open to change, and reasonably generous with its benefits." (Ibid.)



Thus by 1980, a survey conducted by the Computer Science Research Network (CSNET) of academic

institutions to find out what computer system they used, found that "over 90 percent of all

departments were served by one or more UNIX systems." (Comer, pg. 42)



Explaining the surprising popularity that UNIX achieved despite its grassroots distribution system,

McIlroy writes, "Therein lies the genius of Unix, which, without a sales force, and without the support

of hardware makers, was enthusiastically adopted around the world..." ("Unix on My Mind")



"Unix," he emphasizes, "was the distilled essence of operating systems, designed solely to be useful.

Not to be marketable. Not to be compatible. Not to be an appendage to a particular kind of hardware.

Moreover a computer running Unix was to be useful as a computer, not just a `platform' for canned

`solutions'. It was to be programmable - cumulatively programmable. The actions of program builders

were to be no different in kind from the actions of users; anything a user could do a program could do

too...." (Ibid.)



Describing the environment that gave birth to these advances, McIlroy writes,

"Open systems! Our systems! How well those who were there remember the pipe-festooned garret

where Unix took form. The excitement of creation drew people to work there amidst the whine of the

computer's cooling fans, even though almost the same computer access could be had from one's office

or from home. Those raw quarters saw a procession of memorable events. The advent of software

pipes precipitated a day-long orgy of one-liners...as people reveled in the power of functional

composition in the large, which is even today unavailable to users of other systems. In another

memorable event, the unarticulated notion of software tools, which had been bolstered by pipes, was

finally brought home by the liberation of the pattern matching program grep from within the editor."

(Ibid.)



He continues:



"A parade of visitors came to marvel at the system and to copy it. The makers of our 1972 model

phototypesetter goggled when they saw the paper tape input replaced by wires straight from a

computer. On-line PicturePhone[r] service caught attention. Synthetic speech was initiated by a

memorable `Come here, Watson' event when words typed in a remote office range out clearly in the

lab: `It sounds better over the telephone.' The computer's readings and misreadings became a

constant crowd pleaser. There was great, if somewhat conspiratorial, excitement over a stealthy

version of the C compiler that would recognize and silently bug the Unix login program and would

propagate the ability through future generations of the compiler itself....No trace of the bug appeared

in source code." (Ibid.)



And UUCP and then Usenet News made this the experimental research environment available for those

not at Bell Labs, or with access to the experimental Arpanet. "Eager to distribute his software quickly

and painlessly, Mike invented uucp, thereby begetting a whole global network," McIlroy writes. (from

"A Research UNIX Reader: Annotated Excerpts from the Programmer's Manual, 1971-1986" by M. D.

McIlroy, Computing Science Technical Report No. 139, AT&T Bell Laboratories, June 1987, pg. 3.



Summarizing the relationship between Bell Labs and the academic community in developing UNIX,

Comer concludes:



"UNIX was not invented by hackers who were fooling around, nor did it take shape in a vacuum. It

grew from strong academic roots and it has both nurtured and taken nourishment from academia

throughout its development. The primary contributors to UNIX were highly educated mathematicians

and computer scientists employed by what many people feel is the world's premier industrial research

center, Bell Laboratories. Although they were knowledgeable and experienced in their own right, these

developers maintained professional contacts with researchers in academia, leading to an exchange of

ideas that proved beneficial for both sides. Understanding the symbiotic relationship between UNIX

and the academic community means understanding the background of the system's inventors and the

history of interactions between universities and Bell Laboratories." (Comer, pg. 34, 42)



Describing this fertilization, Dennis Ritchie wrote, "...Unix enjoyed an unusually long gestation period.

During much of this time (say 1969-1979) the system was effectively under the control of its

designers and being used by them. It took time to develop all the ideas and software, but even though

the system was still being developed people were using it, both inside Bell Labs, and outside under

license. Thus, we managed to keep the central ideas in hand, while accumulating a base of

enthusiastic, technically competent users who contributed ideas and programs in a calm,

communicative, and noncompetitive environment. Some outside contributions were substantial, for

example, those from the University at Berkeley." ("Reflections on Software," August 1984, vol 27, No.

8, pg. 75)



John Lions, reviewing his experience as part of the UNIX community, concludes, "We have made a

large number of contacts and exchanged a great deal of information around the world through this

UNIX connection. Possibly that is the nicest thing about UNIX: it is not so much that the system itself

is friendly but that the people who use it are. " (Lions, pg. 57)

It is a rare and wonderful event in the development of human society when a scientific and

technological breakthrough is made which will certainly affect the future course of social contributions

wer substantial, for example, those from the development and which becomes known when its

midwives are still alive to tell us about it. UNIX, the product of researcher at Bell Labs, the then

regulated AT&T system, and academic computer science, and a valuable invention for computer

science, for computer education and for the education of the next generation of computer scientists

and engineers, is such an event.



By Ronda Hauben (ronda@umcc.umich.edu)



Related docs
Other docs by pengxiuhui
[CMS-SPIP CMS pour Susciter une
Views: 0  |  Downloads: 0
RéGIME ENREGISTRé D'éPARGNE-éTUDES
Views: 0  |  Downloads: 0
Aggregation and Synchronization
Views: 2  |  Downloads: 0
5816-Port 10100Mbps Fast Etherne
Views: 3  |  Downloads: 0
GHQpotato1_05
Views: 0  |  Downloads: 0
WIPO Domain Name Dispute Case No.D2010-1415
Views: 1  |  Downloads: 0
YOUTH APPLICATION
Views: 4  |  Downloads: 0
S-Link to Gigabit Ethernet Adapt
Views: 2  |  Downloads: 0
By registering with docstoc.com you agree to our
privacy policy

You are almost ready to download!

You are almost ready to download!