Release Date: February, 1973
Released By: Bell Labs Research
Source Code: some source code is in the Unix Archive, browsable in the Unix Tree
Documentation: 3rd Edition man pages
The Third Edition of Unix was the last version with a kernel still written in assembly code, but is the first version to include pipes. More specifically, the Third Edition kernel targets the PDP-11/45 hardware including making use of protection and extended arithmetic features. For much of 1973, the existing Third Edition was maintained and improved, while the kernel was rewritten in C to become the Fourth Edition of Unix.
For the Third Edition of Unix we only have part of the C compiler, and the manual pages. Dennis Ritchie describes this version of the C compiler as follows:
“prestruct-c” is a copy of the compiler just before I started changing it to use structures itself. … [It] implements structures in a way that begins to approach their current meaning. Their declaration syntax seems to use () instead of {}, but . and → for specifying members of a structure itself and members of a pointed-to structure are both there.
The files currently listed as Second Edition under cmd and lib in the UNIX tree, V2 Sources, may represent code closer in character to the Third Edition, given the lack of Extended Arithmetic Element usage. See this email.
Changes include:
Epoch is updated to 1972
Conversion of hog(II) to nice(II)
Removal of tell(II)
Added true floating point with fpe(II)
Section II adds boot, csw, dup, pipe, times
Use of the Extended Arithmetic Element has been removed
Section IV page names now reflect device names, not file names
Section IV adds vt
Deprecation of PDP-11/20-era lpr(IV) support
Deprecation of PDP-11/20-era rp(IV) support
Added a “How to Get Started” section to the manual intro, adapted from the removed login(VII) page
An earlier find(I) tool, distinct from the modern one, is removed
A manual is produced for the assembler, allowing removal of expository detail in as(I) page
The linker no longer references B or Explor files, presumably dropping support and related libraries
The desk calculator dc(I) gains many features
The first nroff(I) page on the public record appears
Many commands are converted to support acting as a filter with pipes
The “>” operator is added to the shell to support pipelines
The shell prompt has been converted from '@' to '%' and furthermore displays as '#' for the superuser
The directory /usr/bin is first added to the default $PATH
System libraries are moved from /usr/bin to /bin
Tektronix 611 support, arrays, atn() added to bas(I)
Deprecation of fptrap(III) as 11/45 has floating point support
Deprecation of /etc/ident and /etc/uids in favor of encrypted passwords and GECOS field in /etc/passwd
Deprecation of basic(VI) interpreter
Establishment of manual section VIII (Maintenance)
Includes priming it with acct, check, ds, istat, mount, salv, su, tm, umount
New bproc(VIII) for PDP-11/45 assembly system
Section I adds cdb, factor, forml, hyphen, passwd, proof, reloc, size, sno, speak, split, typo, uniq, vs
Section III adds ddsput, ecvt, ftoo, pow, rand, ttyn
Section VI adds yacc
Section VII adds greek, vsp
Adds 20boot, chk, clri, kill, ps, swtmp
Owners are no longer listed in the manual pages
The following papers are carried over in SEE ALSO sections from the Second Edition in the manual:
The UNIX Time-sharing System - D.M. Ritchie, K. Thompson
Users' Reference to B - K. Thompson
C Reference Manual - D.M. Ritchie
M6 Manual - A.D. Hall
The following papers are introduced in SEE ALSO sections:
UNIX Assembler Manual - D.M. Ritchie
A Manual for the TMG Compiler-writing Language - M.D. McIlroy
NROFF User's Manual - J.F. Ossanna
YACC Manual - S.C. Johnson
LR Parsing - A.V. Aho, S.C. Johnson
“AT&T Writeup on DDS” - Author unknown, referenced in ddsput(III)
“HIS Documentation” - Author unknown, referenced in gerts(III)
For more information about Third Edition Unix, see The Evolution of the Unix Time-sharing System by Dennis Ritchie.