| Both sides previous revisionPrevious revisionNext revision | Previous revision |
| systems:3rd_edition [2023/05/23 09:23] – add papers segaloco | systems:3rd_edition [2026/04/30 10:07] (current) – segaloco |
|---|
| **Release Date:** February, 1973\\ | **Release Date:** February, 1973\\ |
| **Released By:** Bell Labs Research\\ | **Released By:** Bell Labs Research\\ |
| **Source Code: ** some source code is in the [[http://www.tuhs.org/Archive/PDP-11/Distributions/research/Dennis_v3/|Unix Archive]], browsable in the [[http://www.tuhs.org/cgi-bin/utree.pl?file=V3|Unix Tree]]\\ | **Source Code: ** some source code is in the [[https://www.tuhs.org/Archive/Distributions/Research/Dennis_v3/|Unix Archive]], browsable in the [[https://www.tuhs.org/cgi-bin/utree.pl?file=V3|Unix Tree]]\\ |
| **Documentation: ** [[http://www.tuhs.org/Archive/PDP-11/Distributions/research/Dennis_v3/v3man.tar.gz|3rd Edition man pages]] | **Documentation: ** [[https://www.tuhs.org/Archive/Distributions/Research/Dennis_v3/v3man.tar.gz|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 [[systems:4th_edition|Fourth Edition]] of Unix. | 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 [[systems:4th_edition|Fourth Edition]] of Unix. |
| |
| For the Third Edition of Unix we only have part of the C compiler, and the manual pages. [[people:dennis_ritchie|Dennis Ritchie]] [[http://cm.bell-labs.com/cm/cs/who/dmr/primevalC.html|describes]] this version of the C compiler as follows: | For the Third Edition of Unix we only have part of the C compiler, and the manual pages. [[people:dennis_ritchie|Dennis Ritchie]] [[https://www.nokia.com/bell-labs/about/dennis-m-ritchie/primevalC.html|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. | "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 [[systems:2nd_edition|Second Edition]] under cmd and lib in the UNIX tree, [[https://www.tuhs.org/cgi-bin/utree.pl?file=V2|V2 Sources]], may represent code closer in character to the Third Edition, given the lack of Extended Arithmetic Element usage. | The files currently listed as [[systems:2nd_edition|Second Edition]] under cmd and lib in the UNIX tree, [[https://www.tuhs.org/cgi-bin/utree.pl?file=V2|V2 Sources]], may represent code closer in character to the Third Edition, given the lack of Extended Arithmetic Element usage. See [[https://www.tuhs.org/pipermail/tuhs/2023-May/028413.html|this email.]] |
| |
| Changes include: | Changes include: |
| * An earlier find(I) tool, distinct from the modern one, is removed | * 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 | * 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 desk calculator dc(I) gains many features |
| * The first nroff(I) page on the public record appears | * The first nroff(I) page on the public record appears |
| |
| * UNIX Assembler Manual - D.M. Ritchie | * UNIX Assembler Manual - D.M. Ritchie |
| * A Manual for the TMG Compiler-writing Language - D. McIlroy | * A Manual for the TMG Compiler-writing Language - M.D. McIlroy |
| * NROFF User's Manual - J.F. Ossanna | * NROFF User's Manual - J.F. Ossanna |
| * YACC Manual - S.C. Johnson | * YACC Manual - S.C. Johnson |
| * "HIS Documentation" - Author unknown, referenced in gerts(III) | * "HIS Documentation" - Author unknown, referenced in gerts(III) |
| |
| For more information about Third Edition Unix, see [[http://cm.bell-labs.com/cm/cs/who/dmr/hist.html|The Evolution of the Unix Time-sharing System]] by Dennis Ritchie. | For more information about Third Edition Unix, see [[https://www.nokia.com/bell-labs/about/dennis-m-ritchie/hist.html|The Evolution of the Unix Time-sharing System]] by Dennis Ritchie. |
| |