User Tools

Site Tools


systems:2nd_edition

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
systems:2nd_edition [2015/12/29 16:59] – created adminsystems:2nd_edition [2023/05/23 08:17] (current) – hardware specifics segaloco
Line 1: Line 1:
 ====== Second Edition Unix ====== ====== Second Edition Unix ======
  
-**Release Date:** June 1972\\+**Release Date:** June 12, 1972\\
 **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/1972_stuff/|Unix Archive]], browsable in the [[http://minnie.tuhs.org/cgi-bin/utree.pl?file=V2|Unix Tree]]\\ +**Source Code: ** some source code is in the [[https://www.tuhs.org/Archive/Distributions/Research/1972_stuff/|Unix Archive]], browsable in the [[https://www.tuhs.org/cgi-bin/utree.pl?file=V2|Unix Tree]]\\ 
-**Documentation: ** [[http://www.tuhs.org/Archive/PDP-11/Distributions/research/1972_stuff/unix_2nd_edition_manual.pdf|2nd Edition man pages]]+**Documentation: ** [[https://www.tuhs.org/Archive/Distributions/Research/Dennis_v2/v2man.pdf|2nd Edition man pages]] 
 + 
 +The Second Edition of Unix was developed for the PDP-11/20 at Bell Labs by Ken Thompson, Dennis Ritchie and others. It extended the First Edition with more system calls and more commands. This edition also saw the beginning of the C language, which was used to write some of the commands. 
 + 
 +The Second Edition, like the first, was only designed to run on the unprotected PDP-11/20 and requires the Extended Arithmetic Element to simulate some operations which would later be supported natively on the PDP-11/45 and other models. This would be the last PDP-11/20 unprotected version of UNIX, as the following Third Edition represents an intermediary PDP-11/45 assembly version of the system and the kernel is rewritten in C before the Fourth Edition. 
 + 
 +The code in the Unix Archive is only the source to some of the commands, some of the library functions, and the C compiler. The files in c/ come from the [[https://www.tuhs.org/Archive/Applications/Early_C_Compilers/last1120c.tar.gz|last1120c.tar.gz]] tape, and form a working C compiler for Second Edition Unix. 
 + 
 +The files in lib/ come from the libc.sa file which is on the last1120c.tar.gz tape, and form the C library for the compiler. 
 + 
 +The files in cmd/ are recreated from the text fragments found on the file [[https://www.tuhs.org/Archive/Distributions/Research/1972_stuff/s1-bits.gz|s1-bits.gz]]. These were reconstructed by Doug Merritt and Warren Toomey, and form the source code to some of the commands in Second Edition Unix. 
 + 
 +Another archive, [[https://www.tuhs.org/Archive/Distributions/Research/1972_stuff/s2-bits.tar.gz|s2-bits.tar.gz]], contains what appears to be a dump of the root filesystem of a Second Edition UNIX installation. The contents include binaries of three different formats: those that explicitly call brk upon start, those with a magic number of 405(8), the First Edition a.out(V) format, and those with a magic number of 407(8), the Second Edition a.out(V) format. These format discrepancies may imply the rough linking time of the various objects present. 
 + 
 +Changes include: 
 + 
 +  * Exit/wait now support returning a status 
 +  * Many system limits are increased (e.g. mounts, buffer sizes) 
 +  * The hog, kill, sleep, and sync syscalls are added 
 + 
 +  * Added mount command to the INIT tape 
 +  * Dropped chown, cp, ln, mv, rm, rmdir, stat commands from INIT tape 
 + 
 +  * The init system now uses getty and login 
 +  * The shell now supports [ ] character class matches, appending with %%>>%% 
 +  * The shell has expanded programming support with control flow (provided by programs) and error messages 
 +  * Many commands add diagnostics 
 +  * The stty command is added to set terminal characteristics 
 +  * The cp and mv commands no longer operate on pairs 
 +  * The ds, istat, and salv filesystem tools are added 
 +  * NROFF is allegedly added or very close, as it is in the manual %%TOC%% but the page is absent 
 + 
 +  * The assembler and linker now support relocation and segmentation 
 +  * The bc B interpreter replaces the old B system 
 +  * The cc C compiler is introduced 
 +  * The m6 macro processor is introduced 
 +  * The tmg compiler-compiler is introduced 
 +  * The fc Fortran compiler replaces the old for compiler 
 +  * The linker now supports the Explor language 
 +  * Libraries move from /etc to /usr/lib 
 + 
 +  * The floating point simulator is improved 
 +  * The atan, hypot, and sqrt math functions are added 
 +  * The salloc string library is added 
 +  * The qsort algorithm is added 
 + 
 +  * Connectivity to GECOS via the 201 data phone is added 
 +  * IBM 2741 support is added 
 +  * Magtape support is added 
 +  * The motd file is added 
 +  * Removed the binary punched paper tape format and utilities 
 +  * Removed many device-specific commands (e.g. dtf, rkf) 
 + 
 +The following papers are mentioned in SEE ALSO sections in the manual: 
 + 
 +  * Users' Reference to B - K. Thompson 
 +  * C Reference Manual - D.M. Ritchie 
 +  * M6 Manual - A.D. Hall 
 +  * ROFF Manual - J.F. Ossanna 
 +  * The UNIX Time-sharing System - D.M. Ritchie, K. Thompson 
 + 
 +For more information about Second Edition Unix, see [[https://www.bell-labs.com/usr/dmr/www/hist.html|The Evolution of the Unix Time-sharing System]] by Dennis Ritchie.
  
systems/2nd_edition.1451368747.txt.gz · Last modified: 2015/12/29 16:59 by admin