|This article needs additional citations for verification. (November 2012)|
|Unixes by Bell|
The Programmer's Workbench (PWB/UNIX) was an early version of the Unix operating system created in the Bell Labs Computer Science Research Group of AT&T. Its stated goal was to provide a time-sharing working environment for large groups of programmers, writing software for larger batch processing computers.
Prior to 1976 Unix development at AT&T was a project of a small group of researchers in Department 1127 of Bell Labs. As the usefulness of Unix in other departments of Bell Labs was evident, the company decided to develop a version of Unix tailored to support programmers in production work, not just research. The Programmer's Workbench was started in 1973, by Evan Ivie and Rudd Canaday to support a computer center for a 1000-employee Bell Labs division, which would be the largest Unix site for several years. PWB/UNIX was to provide tools for teams of programmers to manage their source code and collaborate on projects with other team members. It also introduced several stability improvements beyond Research Unix.
While PWB users managed their source code on PDP-11 Unix systems, programs were often written to run on other legacy operating systems. For this reason, PWB included software for submitting jobs to IBM System/370, UNIVAC 1100 series, and XDS Sigma 5 computers. In 1977 PWB supported a user community of about 1100 users in the Business Information Systems Programs (BISP) group of Bell Labs.
Two major releases of Programmer's Workbench were produced. PWB/UNIX 1.0, released July 1, 1977 was based on Version 6 Unix; PWB 2.0 was based on Version 7 Unix. Most of PWB/UNIX was later incorporated in the commercial UNIX System III and UNIX System V releases.
Notable firsts in PWB include:
- The Source Code Control System, the first revision control system, written by Marc J. Rochkind
- The remote job entry batch-submission system
- The PWB shell, written by John R. Mashey, which preceded Steve Bourne's Bourne shell
- The restricted shell (rsh), an option of the PWB shell
- The troff -mm (memorandum) macro package, written by John R. Mashey and Dale W. Smith
- The make utility for build automation
- Utilities like find, cpio, expr, all three written by Dick Haight, xargs, egrep and fgrep
- yacc and lex, which, though not written specifically for PWB, were available outside of Bell Labs for the first time in the PWB distribution
- T.A. Dolotta and J.R. Mashey (1976). An introduction to the Programmer's Workbench. Proc. 2nd Int'l Conf. on Software Engineering, pp. 164–168.
- John R. Mashey (2004). Languages, Levels, Libraries, and Longevity. ACM Queue 2 (9).
- T.A. Dolotta, R.C. Haight and J.R. Mashey (1978). Unix Time-Sharing System: The Programmer's Workbench. Bell System Tech. J. 57(6):2177–2200.
- The Programmer's Workbench -- A Machine for Software Development October 1977 CACM article about PWB (PDF file)
- Unix ad mentioning PWB, from a 1981 issue of Datamation (on Dennis Ritchie's homepage)
- PWB distributions, from the Ancient UNIX Archive