Table des matières

Installation de 4BSD sur VAX-11/780 via l'émulateur SimH

En 1979 la DARPA (Defense Advanced Research Projects Agency) souhaitait unifier les OS connectés à DARPAnet, c'est à ce moment que l'université de Californie à Berkeley proposa à la DARPA de créer 4BSD pour améliorer 3BSD. 4BSD fût publié en novembre 1980 et c'est aussi à ce moment que le CSRG (Computer Systems Research Group) fût créé.

Les principales améliorations de 4BSD sont les bibliothèques Curses et Delivermail, l'ancêtre de Sendmail.

Prérequis pour installer 4BSD

Processus d'installation de 4BSD

Depuis un terminal installé sur votre hôte

Installation des logiciels requis sous Debian :

sudo apt install wget vim simh
J'ai constaté que le paquet simh a été retiré de Debian 13. Si souhaitez récupérer et installer le paquet .deb faîtes ceci :
wget http://ftp.fr.debian.org/debian/pool/main/s/simh/simh_3.8.1-6.1_amd64.deb

puis :

sudo dpkg -i simh_3.8.1-6.1_amd64.deb

SimH n'a pas besoin de dépendances logicielles donc inutile de taper la commande sudo apt-get -f install.

Installation des logiciels requis sous FreeBSD :

sudo pkg install vim open-simh

Créer les répertoires pour l'installation 4BSD :

mkdir -p emulateur/simh/4BSD

Rendez-vous dans le répertoire 4BSD :

cd emulateur/simh/4BSD/

Télécharger la bande d'installation de 4BSD :

wget http://zazie.tom-yam.or.jp/starunix/starunix.tar.bz2

sous FreeBSD :

fetch http://zazie.tom-yam.or.jp/starunix/starunix.tar.bz2

Extraire l'archive starunix.tar.bz2 :

tar xvfj starunix.tar.bz2

Déplacer la bande d'installation et le fichier d'amorçage dans le répertoire courant :

mv -v starunix/4.0bsd/4.0bsd.tape . && mv -v starunix/4.0bsd/boot .
Juste pour info si vous souhaitez décoder le fichier d'amorçage vous même il vous faut le programme uudecode, sous Linux il est présent dans BusyBox et présent par défaut sous FreeBSD et le fichier 4bsd.uue.

Si vous le souhaitez, vous pouvez supprimer ces fichiers et répertoire (devenu inutile pour 4BSD) :

rm -rf starunix*

Créer le fichier install.ini pour le premier démarrage :

vim install.ini

Démarrer sur la bande d'installation de 4BSD à partir du fichier install.ini :

vax780 install.ini

Depuis le terminal du simulateur de SimH

Exécution de mkfs et restor :

mkfs
7942
hp(0,0)
restor
ht(0,1)
hp(0,0)

puis appuyez sur la touche Entrer après Last chance before scribbling on disk.

Appel du programme d'amorçage pour booter le noyau :

boot

puis spécifier le chemin du noyau sur le disque :

hp(0,0)vmunix

Faire une vérification du système de fichiers :

fsck /dev/rrp0a

Formatage de la partition g qui va accueil le slice /usr :

/etc/mkfs /dev/rrp0g 145673

Montage de la partition, avance de la bande et restauration :

/etc/mount /dev/rp0g /usr
cd /usr
cp /dev/rmt12 /dev/null
cp /dev/rmt12 /dev/null
tar xpb 20

ne soyez pas surpris si cette commande mets du temps.

Installation d'un bloc de démarrage :

dd if=/usr/mdec/uboot of=/dev/rrp0a bs=1b count=1

Modification d'autorisations de montage au niveau de la racine / et le slice /usr puis synchronisation du disque et arrêt de l'émulateur :

cd /
chmod 755 / /usr
sync
sync
sync
sync
sync

puis stopper le simulateur avec la combinaison de touche CTRL+E puis appui sur la touche q pour sortir de l'émulateur.

Désormais l'OS 4BSD est complètement installé !

Retour au terminal de l'hôte

Créer le fichier boot.ini pour booter sur votre nouveau système 4BSD :

vim boot.ini

Si vous le souhaitez vous pouvez supprimer les fichiers suivants :

rm 4.0bsd.tape install.ini

Puis démarrer 4BSD via le fichier boot.ini :

vax780 boot.ini

Exemple de démarrage de 4BSD

VAX 11/780 simulator Open SIMH V4.1-0 Current        simh git commit id: d4f85d01

Boot
: hp(0,0)vmunix
87844+15464+130300 start 0x530
VM/UNIX (Berkeley Version 4.1) 11/10/80 
real mem  = 8323072
avail mem = 7860224
Automatic reboot in progress...
Thu Oct  7 13:50:08 PDT 1976
/dev/rp0a: 286 files 1896 blocks 5727 free
/dev/rrp0g: 6041 files 33710 blocks 107868 free
Thu Oct  7 13:50:09 PDT 1976
Mounted /usr on /dev/rp0g  
preserving editor files
clearing /tmp
starting daemons: update cron accounting network mail.
Thu Oct  7 13:50:09 PDT 1976


Virtual VAX/UNIX (Ernie Co-vax)

login: root
Last login: Thu Oct  7 13:42:13 on console

Welcome to Virtual Vax/UNIX.
Erase set to control-H
# ls
.cshrc      .profile    boot        mnt         upvmunix
.exrc       .project    dev         stamp       usr
.login      arch        etc         sys         va
.mailrc     bill        lib         t           vb
.plan       bin         lost+found  tmp         vmunix
# alias ls ls -F
# ls
.cshrc       .profile     boot         mnt/         upvmunix*
.exrc        .project     dev/         stamp        usr/
.login       arch/        etc/         sys/         va/
.mailrc      bill/        lib/         t/           vb/
.plan        bin/         lost+found/  tmp/         vmunix*
# /etc/halt
syncing disks... done

Reboot request failed, PC: 8000299A (ADDL2 #8,SP)
sim> q
Goodbye
Comme vous pouvez le constater, pour éteindre 4BSD sans risque de corruption de fichiers tapez :
/etc/halt