THE 1960S

UNIX

Bell Labs was buzzing with activity in the late 1960s. A team of researchers was working tirelessly on Multics, a titanic project carried out with MIT and General Electric. This colossal ambition was to create an operating system capable of managing multiple users and tasks simultaneously. Among these visionaries were Ken Thompson and Dennis Ritchie, two men who would soon shake up computing.

Multics was struggling. AT&T, weary of astronomical costs and endlessly stretching deadlines, pulled out in 1969. Thompson and Ritchie found themselves with solid experience but no machine to continue their research. Management refused their request to acquire a new computer. Thompson had the idea of recovering an old PDP-7 gathering dust in the laboratories. On this obsolete machine, he began building something unprecedented. He developed a basic kernel, an assembler, a shell, and some fundamental tools like rm, cat, and cp. The name UNIX emerged from a play on words with Multics, an ironic nod to simplicity in the face of its predecessor’s complexity.

The year 1970 was a game-changer. The team secured a PDP-11. This machine had no disk and only 24 KB of memory, but it enabled the emergence of the first official edition of UNIX. Development accelerated. Thompson created the B language, a streamlined version of BCPL, while Ritchie worked on what would become the C language between 1971 and 1973.

This invention of C revolutionized everything. With UNIX’s fourth edition in 1973, Thompson and Ritchie dared to completely rewrite it in this new language. This gamble, audacious at a time when operating systems were written in assembly, made UNIX portable from one architecture to another. The first six editions came in quick succession between 1971 and 1975.

The sixth edition, nicknamed V6, marked UNIX’s first major distribution outside Bell Labs. AT&T distributed the system to universities with its complete source code for next to nothing, a decision that shook the computing world.

The University of California at Berkeley entered the UNIX saga in 1975 when Bob Fabry installed the fourth edition there. Ken Thompson spent a sabbatical year there that energized two brilliant students: Bill Joy and Chuck Haley. They threw themselves into enhancing the system, developing the ex and vi editors, the latter remaining a cornerstone of text editing today, inspiring projects like neovim. In 1977, Bill Joy assembled the Berkeley Software Distribution (BSD), printed in only about thirty copies but destined to spawn many followers.

The 1980s saw a myriad of UNIX versions flourish. AT&T commercialized System III and then various releases of System V through its UNIX System Group. Berkeley meanwhile continued BSD development, bringing remarkable innovations like the Fast File System and especially the TCP/IP network stack. The latter, integrated into version 4.2BSD in 1983, propelled BSD to glory.

Bill Joy left Berkeley in 1982 to co-found Sun Microsystems, a company that would weigh heavily in UNIX’s evolution. Sun developed the Network File System (NFS) and the VFS/vnode architecture, making file sharing over networks invisible to users. In 1987, an unexpected alliance formed between Sun and AT&T to create System V Release 4, merging the best features of SunOS and System V Release 3.2.

This proliferation of UNIX versions created a crying need for standardization. The /usr/group, an association for promoting UNIX established in 1980, tackled the standardization of user interfaces. These efforts led in 1985 to the birth of the POSIX standard (Portable Operating System Interface for Computing Environments), now an essential reference for compatibility between UNIX systems. The X/Open group, created in 1984, developed the X/Open Portability Guide (XPG), integrating POSIX and other standards.

The early 1990s saw an unexpected rival emerge: Linux. In 1991, Linus Torvalds, a student at the University of Helsinki, developed a UNIX-compatible kernel capable of using GNU tools from the Free Software Foundation. Linux captured UNIX’s spirit while adapting it to modern architectures. Its free license accelerated its distribution and massive adoption.

UNIX revolutionized computing through its innovative concepts. The hierarchical file system, where everything is a file, radically simplified resource management. Pipes, suggested by Doug McIlroy in 1972, connected one program’s output to another’s input, creating processing chains of unmatched power. The shell offered a complete programming environment from the command line.

UNIX’s portability, made possible by its implementation in C, facilitated its adaptation to a multitude of architectures. This characteristic, combined with its modular design and exemplary documentation, explains its remarkable longevity. UNIX manuals, present from the first edition, established a technical documentation standard that remains a reference today. Its design philosophy still permeates software development: create simple programs that excel in their domain, use text as a universal interface, compose elementary tools to solve complex problems.