Difference between revisions of "UNIX"

From Computer History Wiki
Jump to: navigation, search
(Add UNIX/70)
(Added section about portability)
Line 12: Line 12:
 
Today's Unix systems are split into various branches, developed over time by AT&T as well as various commercial vendors and non-profit organizations. A number of clones of Unix, which share the interfaces, and 'look and feel', but no code, have also been produced; most notably, [[Linux]].
 
Today's Unix systems are split into various branches, developed over time by AT&T as well as various commercial vendors and non-profit organizations. A number of clones of Unix, which share the interfaces, and 'look and feel', but no code, have also been produced; most notably, [[Linux]].
  
==Notable versions==
+
==Notable Bell versions==
  
 
Versions of relevance for hobbyists include the initial versions from inside [[Bell Labs]]; it later spread more widely inside the Bell system, at the same time that it was starting to appear outside.
 
Versions of relevance for hobbyists include the initial versions from inside [[Bell Labs]]; it later spread more widely inside the Bell system, at the same time that it was starting to appear outside.
Line 53: Line 53:
 
Bell also moved UNIX to the [[IBM System/370]], as a 'supervisor' to [[user]] [[process]]es, under the [[TSS/370]] Resident Supervisor; the result, [[UNIX/370]], ran on a number of large System/370 machines at Bell.
 
Bell also moved UNIX to the [[IBM System/370]], as a 'supervisor' to [[user]] [[process]]es, under the [[TSS/370]] Resident Supervisor; the result, [[UNIX/370]], ran on a number of large System/370 machines at Bell.
  
== CSRG releases ==
+
==Portable versions==
  
Meanwhile the [[Computer Systems Research Group‎]] kept on releasing newer [[BSD]] UNIX's, mostly for the [[VAX]], derived from 32V. These had wide distribution, and tremendous impact; they were a major step in UNIX's road to its current ubiguity.
+
Fairly early on, it became obvious that UNIX, and most of its commands and subsystems, being written in [[C programming language|C]], would be [[portable]], relatively easily.
 +
 
 +
Portability was a little-recognized idea at the time; with a few exceptions (such as [[Multics]]), most operating systems were written in [[assembly language]], which tied them irretrievably to a particular [[instruction set architecture|ISA]]. Indeed, portability was not a stated goal of the UNIX project at any point; it likely became one of strengths of UNIX purely by accident.
 +
 
 +
The first two projects to move UNIX to another machine started almost simultaneously, and in ignorance of each other: one was at Bell, to move UNIX to the [[Interdata 8/32]]; the other was at the University of Wollongong, to the similar [[Interdata 7/32]]. Issues with the Interdata 8/32 prevented that project from being a success, but it produced [[Unix Seventh Edition]], the first portable version; that in turn was used for Unix/32V and UNIX/370.
 +
 
 +
==CSRG releases==
 +
 
 +
Meanwhile the [[Computer Systems Research Group‎]] kept on releasing newer [[BSD]] UNIX's, mostly for the [[VAX]], derived from 32V. These had wide distribution, and tremendous impact; they were a major step in UNIX's road to its current ubiquity.
  
 
Descended from there are several popular versions:
 
Descended from there are several popular versions:
Line 85: Line 93:
 
** [https://www.bell-labs.com/usr/dmr/www/hist.html The Evolution of the Unix Time-sharing System]
 
** [https://www.bell-labs.com/usr/dmr/www/hist.html The Evolution of the Unix Time-sharing System]
 
** [https://www.bell-labs.com/usr/dmr/www/retro.html The UNIX Time-sharing System - A Retrospective]
 
** [https://www.bell-labs.com/usr/dmr/www/retro.html The UNIX Time-sharing System - A Retrospective]
** [https://www.bell-labs.com/usr/dmr/www/portpapers.html Papers about Unix Portability]
 
 
* [https://cseweb.ucsd.edu//classes/wi19/cse221-a/papers/thompson78.pdf UNIX Implementation] - a Thompson paper giving an overview of the kernel
 
* [https://cseweb.ucsd.edu//classes/wi19/cse221-a/papers/thompson78.pdf UNIX Implementation] - a Thompson paper giving an overview of the kernel
 
* [https://maibriz.de/unix/ultrix/etc/iosys.pdf The UNIX I/O System] - a Ritchie covering part of the same ground in more detail
 
* [https://maibriz.de/unix/ultrix/etc/iosys.pdf The UNIX I/O System] - a Ritchie covering part of the same ground in more detail
Line 99: Line 106:
 
** [http://squoze.net/UNIX/bltj/06771919.pdf The Evolution of UNIX System Performance]
 
** [http://squoze.net/UNIX/bltj/06771919.pdf The Evolution of UNIX System Performance]
 
** [http://squoze.net/UNIX/bltj/06771925.pdf A Stream Input-Output System]
 
** [http://squoze.net/UNIX/bltj/06771925.pdf A Stream Input-Output System]
 +
* [https://www.bell-labs.com/usr/dmr/www/portpapers.html Papers about Unix Portability]
 +
** [https://www.bell-labs.com/usr/dmr/www/portpap.html Portability of C Programs and the UNIX System] - the 8/32 port
 +
* [https://akapugsblog.files.wordpress.com/2018/05/inter-unix_portability.pdf Inter-UNIX Portability] - mostly about the commands
 
* [https://www.usenix.org/legacy/events/usenix09/tech/full_papers/toomey/toomey.pdf The Restoration of Early UNIX Artifacts]
 
* [https://www.usenix.org/legacy/events/usenix09/tech/full_papers/toomey/toomey.pdf The Restoration of Early UNIX Artifacts]
 
* [https://multicians.org/unix.html Unix and Multics]
 
* [https://multicians.org/unix.html Unix and Multics]

Revision as of 18:07, 5 August 2023


UNIX
Type: Time-sharing
Creator: Ken Thompson, Dennis Ritchie and Douglas McIlroy at Bell Labs
Multitasking: Multi-tasking with swapping/paging (latter added in a later version)
Architecture: Originally PDP-7, then PDP-11; now cross-platform.
Date Released: 1969


Unix (officially trademarked as UNIX® - the documentation switched from using 'UNIX' to 'Unix' as of V7) is a computer operating system originally developed in the 1970s by a group of AT&T employees at Bell Labs including Ken Thompson, Dennis Ritchie and Douglas McIlroy.

Today's Unix systems are split into various branches, developed over time by AT&T as well as various commercial vendors and non-profit organizations. A number of clones of Unix, which share the interfaces, and 'look and feel', but no code, have also been produced; most notably, Linux.

Notable Bell versions

Versions of relevance for hobbyists include the initial versions from inside Bell Labs; it later spread more widely inside the Bell system, at the same time that it was starting to appear outside.

'Research' versions

Note that 'Version' in early UNIXes refers to the revision of the 'UNIX Programmer's Manual'; UNIX didn't really have coordinated distros before about V6:

Other AT&T versions

The rest of the Bell system, outside Bell Labs, soon found it useful, too, and a number of disparate versions, intended for different environments, appeared:

  • CB-UNIX - for use in control applications, including real-time systems
  • PWB/UNIX - used for production of other systems, in for computer center type usage
  • USG UNIX - a version for general use inside the Bell system
Unix ad

These were later unified, and Unix then went commercial and was sold outside AT&T, in a number of releases. (To the side is an early ad for AT&T UNIX.)

Bell also moved UNIX to the IBM System/370, as a 'supervisor' to user processes, under the TSS/370 Resident Supervisor; the result, UNIX/370, ran on a number of large System/370 machines at Bell.

Portable versions

Fairly early on, it became obvious that UNIX, and most of its commands and subsystems, being written in C, would be portable, relatively easily.

Portability was a little-recognized idea at the time; with a few exceptions (such as Multics), most operating systems were written in assembly language, which tied them irretrievably to a particular ISA. Indeed, portability was not a stated goal of the UNIX project at any point; it likely became one of strengths of UNIX purely by accident.

The first two projects to move UNIX to another machine started almost simultaneously, and in ignorance of each other: one was at Bell, to move UNIX to the Interdata 8/32; the other was at the University of Wollongong, to the similar Interdata 7/32. Issues with the Interdata 8/32 prevented that project from being a success, but it produced Unix Seventh Edition, the first portable version; that in turn was used for Unix/32V and UNIX/370.

CSRG releases

Meanwhile the Computer Systems Research Group‎ kept on releasing newer BSD UNIX's, mostly for the VAX, derived from 32V. These had wide distribution, and tremendous impact; they were a major step in UNIX's road to its current ubiquity.

Descended from there are several popular versions:

  • FreeBSD focuses on providing a system geared towards a single user.
  • NetBSD will run on a variety of 32-bit older systems from the VAX to the Amiga.
  • OpenBSD derived from the NetBSD project will run on all kinds of systems.

Further reading

See also

External links

Fun links