This directory contains a V5 UNIX system image for use with the PDP-11 simulator included in SIMH. The image was taken from a PDP-11/45 with an RK05 disk (2.4 MB).
V5 UNIX was the first version licensed widely outside AT&T, largely due to Thompson and Ritchie’s CACM paper that had recently introduced UNIX to the world.
Version 5 still only targeted PDP-11s, but expanded to include those models with an 18-bit physical address space, compared to the 16-bit address space of previous models. This allowed up to 256 kB of RAM and greatly increased the capabilities of the system, needed as UNIX reached “above 50” installations at the time of this release.
This is the second release of UNIX written in C, a language still in flux that had only existed for a couple years. The system is self-hosting using the included compiler but there are many differences from modern C visible in the on-disk source code.
Old enough to predate the Bourne shell from Steve Bourne, V5 UNIX ships with
the Thompson shell written by Ken Thompson. This was the first UNIX shell,
mainly a command interpreter rather than the interpreted language that most
UNIX shells became. Intentionally minimal, commands like if
and goto
are
implemented as separate executables rather than as built-in shell commands. This
shell was replaced by the Bourne shell in V7 UNIX and by the C shell in 2BSD,
leading to its rapid decline in popularity.
Several now common commands were first introduced in this release, including
dd
, pwd
, and wump
(Hunt the Wumpus). At this stage it’s starting to
feel like a UNIX system, though we must remember that cd
is still chdir
.
Then there’s the editor, ed
. A UNIX classic, it’s a little like using vi
with your eyes shut. If you’ve never used it before, check out my guide to
ed.
Fully tested on SIMH 3.9-0.
To power up a simulated PDP-11/45 and run this V5 UNIX disk image, simply un-gzip the disk image file and start up SIMH with the provided configuration file.
% gunzip unix_v5_rk.dsk.gz
% pdp11 simh.conf
PDP-11 simulator V3.9-0
Disabling XQ
.
.Type kernel filename at the '@' prompt.
.For example: @unix.
.UNIX username is 'root'.
.No password.
.
@
The @
prompt is from the bootloader, to whom we must pass a file to continue
the boot process. Our kernel is a file named unix
, so type that here followed
by ENTER
.
@unix
;login:
The system has now booted up and you may login as root
(no password).
;login: root
#
That’s it! V5 UNIX is up and you’re logged in.
To power off, assuming you are logged in as root
and the system is otherwise
inactive, use the sync
command to flush any buffers to disk and then type
Ctrl-e
to halt the simulation and quit
to exit SIMH.
# sync; sync
# <Ctrl-e>
Simulation stopped, PC: 001726 (MOV (SP)+,177776)
sim> quit
Goodbye
Note that you can also press Ctrl-e
at any time and SIMH will halt the PDP-11
simulation and drop to the sim>
prompt where you can exit. However, doing
this is likely to corrupt a disk as it is equivalent to yanking the power cord
from the wall. To resume from the sim>
prompt, simply type go
and execution
will resume from where it left off.
One may output via the line printer, or input/output via the paper tape.
The relevant options to enable that hardware in SIMH are commented out in
simh.conf
.
When offline, it is possible to mount the disk image and interact with it directly. For example, use https://git.subgeniuskitty.com/pdp11-unix-fusefs/.git.