Difference between revisions of "Unix Seventh Edition"
m |
(avoid redir) |
||
(25 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
− | + | {{Infobox OS | |
+ | | image = seventh edition unix v7.jpg | ||
+ | | caption = Example V7 session | ||
+ | | name = Unix V7 | ||
+ | | creator = AT&T/[[Western Electric]] | ||
+ | | previous version = [[UNIX Sixth Edition|V6]] | ||
+ | | current version = V7 | ||
+ | | next version = [[Unix Eighth Edition|V8]] (not released outside Bell) | ||
+ | | year introduced = January, 1979 | ||
+ | | type = [[Multi-tasking]], [[multi-user]] | ||
+ | | architecture = [[PDP-11]], [[Interdata 8/32]] | ||
+ | }} | ||
+ | This was the last research version of [[UNIX]] (although from V7 on, it was spelled 'Unix') to leave [[Bell Labs]]. It was also quite a [[portable]] version; the Labs had started to move it to other machines, starting with the [[Interdata 8/32]]. | ||
+ | |||
+ | The main change in the [[kernel]] from [[Unix Sixth Edition|V6]] (from the user's point of view) was that the [[UNIX file system]] had been modified to use 32-bit [[disk block]] numbers, to support the larger disks which were starting to appear. Other kernel changes included: | ||
+ | |||
+ | * the addition of the [[process]]' 'environment', and the addition of the exece() system call to pass it | ||
+ | * replacement of the [[UNIX V6 internals#savu(), retu() and aretu()|savu()/retu()]] process-switching mechanism with the new save()/resume() mechanism | ||
+ | * changes to the [[scheduler]] mechanism | ||
+ | * improved locking on use of '[[UNIX V6 internals#exec() and pure-text images|pure texts]]' (shared copies of read-only [[object code|executable binaries]]) (it is not clear if this was inherited from [[PWB/UNIX]] 1, or if it was done by the research group, after V6, but before PWB/UNIX split off) | ||
+ | * process arguments being passed in [[swapping|swap]] space, instead of disk [[buffer]]s (also shared with PWB1) | ||
+ | * the ioctl() [[system call]] for per-[[peripheral|device]] special functions | ||
+ | |||
+ | Extensive new capabilities/tools elsewhere in the [[operating system]] included: | ||
+ | |||
+ | * a greatly improved [[command processor|shell]], with "string variables, trap handling, structured programming, user profiles, settable search path, multilevel file name generation, etc" | ||
+ | * an extended version of the [[C programming language]] (much of which had already appeared outside the Labs as the so-called '[[Typesetter C]]') | ||
+ | * [[lex]] | ||
+ | * [[lint]] | ||
+ | * the [[standard I/O library]] | ||
+ | * [[make]] | ||
+ | * [[awk]] | ||
+ | * the [[UUCP]] [[data communication]] [[protocol suite]] | ||
+ | * [[word processor|text preparation]] tools ('troff', 'tbl', etc) | ||
+ | |||
+ | Unix V7 was also one of the first operating systems to ship with a [[FORTRAN|Fortran 77]] compiler. | ||
== Platforms == | == Platforms == | ||
− | These are the known platforms to run Unix | + | These are the known platforms to run Unix V7 |
=== PDP-11 === | === PDP-11 === | ||
− | + | The [[PDP-11]] was the primary platform which Unix V7 was written on. All other V7's can trace themselves back to this version. | |
=== Interdata 8/32 === | === Interdata 8/32 === | ||
− | The | + | The Interdata 8/32 was the first port to a 32 bit platform outside of Bell Labs. |
=== Sun 1 === | === Sun 1 === | ||
− | The [[Sun 1]] workstations ran a port of Unix v7 that was done by [[UniSoft]]. This was prior to Bill Joy joining [[SUN]] bringing [[4.2 BSD]] with him. | + | The [[Sun 1]] workstations ran a port of Unix v7 that was done by [[UniSoft]]. This was prior to Bill Joy joining [[Sun Microsystems|SUN]] bringing [[4.2 BSD]] with him. |
=== IBM PC === | === IBM PC === | ||
− | The [[IBM PC]] port was done by [[Microsoft]] however they resold it to various other OEM's under the name [[ | + | The [[IBM-compatible PC|IBM PC]] port was done by [[Microsoft]] however they resold it to various other OEM's under the name [[XENIX]]. Eventually [[SCO]] bought the rights & the Microsoft division responsable for Xenix, along with a deal giving Microsoft a portion of all SCO sales. |
=== Digital VAX === | === Digital VAX === | ||
− | The [[VAX]] port was to the [[VAX-11/780]] platform in the form of [[ | + | The [[VAX]] port was to the [[VAX-11/780]] platform in the form of [[Unix/32V]]. This port was the 'official' port by AT&T to the platform. |
== Modern versions == | == Modern versions == | ||
− | + | A separate project aims to port V7 to the 80386 native; information can be found [http://www.nordier.com/v7x86/index.html here]. | |
+ | |||
+ | == Games == | ||
+ | Unix v7 does include some games.. | ||
+ | |||
+ | <pre> | ||
+ | arithmetic | ||
+ | backgammon | ||
+ | banner | ||
+ | bcd | ||
+ | bj | ||
+ | checkers | ||
+ | chess | ||
+ | ching | ||
+ | cubic | ||
+ | fortune | ||
+ | hangman | ||
+ | lib | ||
+ | maze | ||
+ | moo | ||
+ | ppt | ||
+ | quiz | ||
+ | reversi | ||
+ | ttt | ||
+ | words | ||
+ | wump | ||
+ | </pre> | ||
+ | |||
+ | == How do I get this to run?! == | ||
+ | |||
+ | [[Image:V7unix.png|250px|thumb|left|V7 booting on SIMH]] | ||
+ | |||
+ | <br clear=all> | ||
+ | |||
+ | The install tape is available for the [[PDP-11]] version, so with that in mind, there is the [[Installing v7 on SIMH]] guide. | ||
+ | |||
+ | Also be sure to check out the [[Setting Up Unix - Seventh Edition]] document that was included in the tape. | ||
+ | |||
+ | ==See also== | ||
+ | |||
+ | * [[Installing Unix Seventh Edition]] | ||
+ | |||
+ | ==External links== | ||
+ | * [https://minnie.tuhs.org/cgi-bin/utree.pl?file=V7 V7] - distro at [[The Unix Heritage Society|TUHS]] | ||
+ | ** [https://minnie.tuhs.org/cgi-bin/utree.pl?file=V7/usr/doc/summary/hel0 What's new: highlights of the 7th edition UNIX System] | ||
+ | ** [https://minnie.tuhs.org/cgi-bin/utree.pl?file=V7/usr/doc/regen Regenerating System Software] | ||
+ | * [http://www.bitsavers.org/bits/DEC/pdp11/v7m/ V7M] - distro of the DEC V7M version at [[Bitsavers]] | ||
+ | * [https://archive.subgeniuskitty.com/sites/20180822_wolfram.schneider.org/bsd/7thEdManVol2/index.html Unix Seventh Edition Manual, Volume 2] - everything except the 'man' pages | ||
+ | * [https://www.bell-labs.com/usr/dmr/www/odd.html Odd Comments and Strange Doings in Unix] - includes an explanation of the need to replace savu()/retu() with the new save()/resume() | ||
{{Nav Unix}} | {{Nav Unix}} | ||
− | [[Category:Operating Systems]] | + | |
+ | [[Category: PDP-11 Operating Systems]] | ||
+ | [[Category: Non-DEC Operating Systems]] | ||
+ | [[Category: Unix OS's]] |
Latest revision as of 18:30, 21 October 2023
Unix V7 | |
Example V7 session | |
Type: | Multi-tasking, multi-user |
---|---|
Creator: | AT&T/Western Electric |
Architecture: | PDP-11, Interdata 8/32 |
Previous Version: | V6 |
This Version: | V7 |
Next Version: | V8 (not released outside Bell) |
Date Released: | January, 1979 |
This was the last research version of UNIX (although from V7 on, it was spelled 'Unix') to leave Bell Labs. It was also quite a portable version; the Labs had started to move it to other machines, starting with the Interdata 8/32.
The main change in the kernel from V6 (from the user's point of view) was that the UNIX file system had been modified to use 32-bit disk block numbers, to support the larger disks which were starting to appear. Other kernel changes included:
- the addition of the process' 'environment', and the addition of the exece() system call to pass it
- replacement of the savu()/retu() process-switching mechanism with the new save()/resume() mechanism
- changes to the scheduler mechanism
- improved locking on use of 'pure texts' (shared copies of read-only executable binaries) (it is not clear if this was inherited from PWB/UNIX 1, or if it was done by the research group, after V6, but before PWB/UNIX split off)
- process arguments being passed in swap space, instead of disk buffers (also shared with PWB1)
- the ioctl() system call for per-device special functions
Extensive new capabilities/tools elsewhere in the operating system included:
- a greatly improved shell, with "string variables, trap handling, structured programming, user profiles, settable search path, multilevel file name generation, etc"
- an extended version of the C programming language (much of which had already appeared outside the Labs as the so-called 'Typesetter C')
- lex
- lint
- the standard I/O library
- make
- awk
- the UUCP data communication protocol suite
- text preparation tools ('troff', 'tbl', etc)
Unix V7 was also one of the first operating systems to ship with a Fortran 77 compiler.
Contents
Platforms
These are the known platforms to run Unix V7
PDP-11
The PDP-11 was the primary platform which Unix V7 was written on. All other V7's can trace themselves back to this version.
Interdata 8/32
The Interdata 8/32 was the first port to a 32 bit platform outside of Bell Labs.
Sun 1
The Sun 1 workstations ran a port of Unix v7 that was done by UniSoft. This was prior to Bill Joy joining SUN bringing 4.2 BSD with him.
IBM PC
The IBM PC port was done by Microsoft however they resold it to various other OEM's under the name XENIX. Eventually SCO bought the rights & the Microsoft division responsable for Xenix, along with a deal giving Microsoft a portion of all SCO sales.
Digital VAX
The VAX port was to the VAX-11/780 platform in the form of Unix/32V. This port was the 'official' port by AT&T to the platform.
Modern versions
A separate project aims to port V7 to the 80386 native; information can be found here.
Games
Unix v7 does include some games..
arithmetic backgammon banner bcd bj checkers chess ching cubic fortune hangman lib maze moo ppt quiz reversi ttt words wump
How do I get this to run?!
The install tape is available for the PDP-11 version, so with that in mind, there is the Installing v7 on SIMH guide.
Also be sure to check out the Setting Up Unix - Seventh Edition document that was included in the tape.
See also
External links
- V7 - distro at TUHS
- V7M - distro of the DEC V7M version at Bitsavers
- Unix Seventh Edition Manual, Volume 2 - everything except the 'man' pages
- Odd Comments and Strange Doings in Unix - includes an explanation of the need to replace savu()/retu() with the new save()/resume()
v • d • e UNIX Versions, Vendors and Related |
---|
Research Unix PDP-7 UNIX • V1 • V2 • V3 • V4 • V5 • V6 • V7 • V8 • V9 • V10 • LSX • MINI-UNIX • Unix/32V
AT&T - CB-UNIX • PWB/UNIX • USG UNIX • System III • System IV • System V BSD - 2.9 BSD • 2.10 BSD • 2.11 BSD • 3BSD • 4BSD • 4.1 BSD • 4.2 BSD • 4.3 BSD • 4.4 BSD BSD Descendants 386BSD • NetBSD • FreeBSD • OpenBSD • NeXTSTEP • Darwin |
Other - xv6 • AMIX • SunOS • Solaris • ULTRIX • A/UX • XENIX • AIX • Dell UNIX |