← Back to articles

Rediscovery of UNIX V4: The First C-Written Version Comes Back to Life

January 2, 2026

computer storage tape

In a landmark achievement for computer historians, Al Kossow — the software curator at the Computer History Museum — has successfully recovered the contents of a remarkably old tape believed to contain the earliest version of UNIX V4. This version, notable for being the first to have its kernel written in C, was stored on a nine-track tape from the 1970s and is now accessible via the Internet Archive.

The Significance of UNIX V4

UNIX V4 marks a crucial point in operating system history: it was the first to rewrite much of its kernel in the C programming language. This shift from assembly language to C laid the foundation for UNIX’s portability and evolution, influencing countless subsequent systems.

The recovered UNIX V4 files encompass roughly a 27 KB kernel, reflecting the minimal complexity of the time. The files are part of a massive 1.6 GB archive, a digital reconstruction of the original tape's data, obtained through sophisticated magnetic flux sampling methods.

The Recovery Process

The process employed the readtape tool, developed at the Computer History Museum, which samples the raw magnetic flux variations on tape rather than merely copying digital bytes. This technique is akin to how the Greaseweazle tool archives old floppy disks by sampling their flux transitions, enabling error recovery even with damaged media.

While most of the data was successfully recovered, a few blocks had read errors, but enough remained to reconstruct the original files. Angelo Papenhoff provided the processed version, complete with instructions to run it, making the historic code accessible to researchers and enthusiasts alike.

Viewing and Running UNIX V4 Today

The recovered UNIX V4 has been made available on the Internet Archive, and it can be run inside the SimH emulator on modern operating systems like macOS 12. For convenience, a pre-processed version with guidance is also available, reducing the barrier to experimentation.

Historical Context of UNIX Development

The earliest UNIX versions, such as the so-called "Zeroth edition," were crafted by Ken Thompson in 1969 for a PDP-7, an 18-bit machine. This initial version was assembled entirely in early assembly language, reflecting the limited hardware of the era.

By 1970, Thompson rewrote UNIX for the PDP-11, a 16-bit machine, which marked the advent of UNIX First Edition. Later versions, such as UNIX V2 and V3 (introduced in 1972), began implementing features like pipes and the nascent C programming language, both of which revolutionized software development.

The Evolution and Spread of UNIX

UNIX V4 represented a milestone as the first version where much of the kernel was coded in C, facilitating broader portability. It ran on the PDP-11/45, a more advanced model of the PDP-11 family.

Over time, UNIX grew in complexity, leading to many variants and adaptations, including the famous V7 and the development of Linux much later. Many contemporary systems still bear the legacy of these early UNIX principles, despite their massive scaling.

Uncovering the Roots

The discovery of UNIX V4’s files highlights the importance of archival efforts and the preservation of early digital artifacts. It also underscores how technological limitations of the past—like scarce storage and primitive hardware—shaped the design and simplicity of early UNIX, which contrasts sharply with today's sprawling, feature-rich systems.

Today, the ongoing work of historians and developers preserves and celebrates these roots, illustrating the evolution from tiny, cryptic OS fragments to the complex systems integral to modern computing.

early UNIX code

In conclusion, this "Christmas miracle" confirms that a crucial evolutionary step in UNIX history, long thought lost, is now accessible for educational and historical exploration, shedding light on the humble beginnings of one of the most influential operating systems ever created.