[Simh] Unix SYS III on SIMH
Jose R. Valverde
jrvalverde at cnb.csic.es
Fri May 22 06:12:37 EDT 2009
Hi,
regarding Sys III on SIMH.
I also tried some time ago (I think about July 2008, the messages
are on TUHS mailing list). I had partial success but first things first:
Where did you get the tape files from? I can't find them on TUHS.
I do have some SysIII tapes that were distributed by SCO under their
ancient UNIX license (prior to the BSD-like open one), but those were for
PDP-11 and mainly a backup tape (boot cpio.tape mini-root sys3.tar.gz).
These are also the ones I can find on TUHS.
That one I managed to install albeit through a convoluted process
involving prior install of V7 (see below).
Then I have a set of tapes that I got off the Net at some point,
but have never been able to find again. The set of tapes I have are
named
ftp://ftp.es.embnet.org/pub/misc/os/UNIX/sysIII
sysIII_vax780_tape1_set1.tap.gz sysIII_vax780_tape2_set1.tap.gz
sysIII_vax780_tape1_set2.tap.gz sysIII_vax780_tape2_set2.tap.gz
I probably added the sysIII_ prefix myself. If so, then it looks
like it might be the same you have, only in my case I have a different
organization and two tapes (I might have rearranged the files when I
first downloaded them from wherever I did). As I can't trace back the
files to their origin I can't check any longer (if I just concatenated
them I might have broken things, who knows).
Now to the point: I have been trying to read those files in a
number of ways with little success. So you got a lot farther than I did
with the VAX. BTW, if you read the mails in TUHS archives, the URL I gave
may not be valid now (our computer center is at +30C and disks and servers
are burning out on the clock).
Another possibility is that the tapes might be mislabeled and
belong to a PDP11 instead of a VAX.
As for SysIII on the PDP11 this is the HOWTO I wrote for the distro
which is on
ftp://ftp.es.embnet.org/pub/misc/os/UNIX/sysIII-PDP11
- - - - - - - -
This is the HOWTO for SystemIII
===============================
Welcome to System-III for the PDP11. This distribution draws heavily on
Hellwig Geisse's distribution of Unix-v7 for the PDP/11. Indeed it is
advisable to also have it handy if you want to complete System-III
installation by yourself.
The System-III distribution used was taken from TUHS (www.tuhs.org)
ancient UNIX archives (/pub/PDP11/Distributions/usdl/SysIII) released
by SCO.
There are two options available:
a) you can run SysIII directly off the images provided under s3
b) you can install it yourself
Running the provided image
==========================
Change your directory into 's3' and run 'sys3.sh'
Boot the system using
#0=unixhpht
This will take you into single-user mode. You can add the /usr filesystem
(located at rp1) with
mount /dev/rp1 /usr
Shut down the system using the command 'shutdown' to avoid filesystem
corruption!
Installing System III yourself
==============================
1) You will need the paper 'Setting Up Unix - Seventh Edition' from
docs/v7vol2b, pages 147-154. I recommend printing it out.
2) Change your current directory to 'sim'.
Compile the pdp11 simulator by executing the command 'make'.
3) Change your current directory to 'mktape'.
Compile the 'mktape.c.s3' program by copying it to 'mktape.c' and
running 'make'.
4) Prepare the tape:
Copy the SystemIII installation files (boot, cpio.tape, mini-root)
from subdirectory 'SysIII' to the 'mktape' subdirectory, then run
'mktape'.
This will generate a single tape file with a mini-root SystemIII file
system on it, but missing the complete System-III hierarchy which will
need to be added afterwards. This tape is in a format which the simulator
can understand, i. e. with proper block and file marks on it. The
tape file is named 'SysIII.tm'.
5) Change your current directory to the 'run' subdirectory. Here we
will simulate a PDP11/45 with an RP06 disk and a TU10 tape drive.
Device tm0 is attached to the file 'tape.tm' (write locked).
Device rp0 is attached to the file 'system.hp' (write enabled).
The configuration file 'setup.conf' already contains a sequence
of simulator instructions to deposit the TU10 bootstrap in memory.
Copy the simulator 'pdp11' and the distribution tape 'SysIII.tm'
to the current subdirectory as 'pdp11' and 'tape.tm' respectively.
Run 'pdp11 setup.conf'. The configuration of the machine is displayed
as well as the bootstrap instructions starting at location 100000.
6) Now install the min-root SystemIII on the disk:
To execute the bootstrap, type 'run 100000'.
Wait some seconds, then type CTRL-E. This will stop the simulation
('halt the CPU'). Restart it at 0 with 'run 0'. This will launch
the SystemIII installation program. You will see
UNIX tape boot loader
UNIX -- Initial Load: Tape-to-Disk
The type of disk drive on which the Root file system will reside,
as well as the type of tape drive that will be used for Tape 1
must be specified below.
Answer the questions with a 'y' or 'n' followed by
a carriage return or line feed.
There is no type-ahead -- wait for the question to complete.
The character '@' will kill the entire line,
while the character '#' will erase the last character typed.
RP03 at address 176710?:
Now you can install your SystemIII mini-root. Just remember:
the tape is a TU10, i.e. the device name is 'tm',
the disk is an RP04, i.e. the device name is 'hp'.
7) The steps you are performing are roughly these:
- discard installation on an RP03 disk
- select installation on an RP04/5/6 (drive number 0)
- accept that you have a TU10/TM11 (drive number 0)
- label the disk as 'unix'
- restore the root file system from tape
8) After the mini-root install the simulator halts the machine.
At this point your disk has a mini-root, but no bootable kernel
and not a complete system. You need to get the complete file system
on the disk.
As the original installation tape is lost we need to resort to the
tar copy of the complete file system, for which we need a separate
UNIX from which we can restore it.
8.1) Copy the System III tar backup of the file system into the
'mktape' subdirectory and uncompress it:
gzcat SysIII/sys3.tar.gz > mktape/sys3.tar
8.2) Change directory to 'mktape' and copy 'mktape.c.1' to 'mktape.c'
then run make. This will create an 'mktape' that can create single
file tapes. Run it as
mktape sys3.tar 512 sys3.tm
8.3) Now comes the most difficult part: you need a simulated V7 machine
to which you will attach the System III system disk and the System III
filesystem dump: start the simulator for the V7 Unix adding them to its
configuration, e.g.
set rp0 rp04
att rp0 unix_v7.hp
set rp1 rp06
att rp1 /path/to/run/system.hp
att tm0 /path/to/mktape/sys3.tm
boot rp0
hp(0,0)unix
8.4) boot it as usual and install the new disk by making the device
nodes. If you have V7 already on an RP disk, the following example
commands can create the device nodes
cd dev
/etc/mknod hp0 b 6 8
/etc/mknod hp7 b 6 15
/etc/mknod rhp0 c 14 8
/etc/mknod rhp7 c 14 15
chmod go-w hp0 hp7 rhp0 rhp7
8.5) mount the new root filesystem
mkdir /mnt
/etc/mount /dev/hp0 /mnt
8.6) create the usr filesystem and mount it
/etc/mkfs /dev/hp7
mkdir /mnt/usr
/etc/mount /dev/hp7 /mnt/usr
8.7) change directory to /mnt and restore the system
cd /mnt
cat /dev/mt0 | tar -xvf -
8.8) sync the disks and stop the UNIX V7 emulator.
You now have a bootable disk with root and usr file systems on it.
The name of the disk is 'system.hp'.
Hint: Make a backup copy, only in case anything will go wrong...
9) Now the standard procedure for firing up UNIX is like this:
pdp11 sys3.conf
0=unixhpht
If you have a look at the sys3.conf file you will notice some
minor differences: the tape being emulated for production is
not the same as the one used for installation. The TM device does not
seem to work on SystemIII, but TU does. That is the reason
for using the 'unixhpht' kernel to boot. Notice as well that we
use a plain vanilla PDP 11/70 to boot.
Note: this boots the system into single user mode by default. You
need to add /usr manually to access it. For some reason device
numbering is different on SysIII and here, the root partition is
number /dev/rp7 whereas /usr is number /dev/rp1. We also need to
create a /tmp directory to complete the system:
mount /dev/rp1 /usr
mkdir /tmp
chmod 1777 /tmp
You are now ready for a full system build.
Shut down the system using the command 'shutdown' to avoid filesystem
corruption!
José R. Valverde, EMBnet/CNB.
jrvalverde <AT> acm.org
--
EMBnet/CNB
Scientific Computing Service
Solving all your computer needs for Scientific
Research.
http://bioportal.cnb.csic.es
http://www.es.embnet.org
More information about the Simh
mailing list