Wiki Ordunix

Linux, FreeBSD, macOS, Windows et Histoire Informatique

Outils pour utilisateurs

Outils du site


wiki:virtualisation_et_emulation:simh:tutos:unix-v7

Ceci est une ancienne révision du document !


Installation d'Unix version 7 sur PDP-11 via l'émulateur SimH

Prérequis pour installer Unix version 7

  • Vous aurez besoin du logiciel gzip pour la décompression.
  • D'un éditeur de texte de votre choix.
  • D'un interpréteur perl pour créer la bande d'installation via le fichier mkdisttap.pl pour la V7.
  • De l'émulateur SimH.
  • Des sets d'Unix version 7 (V7) qui sont les suivants :
    • f0.gz
    • f1.gz
    • f2.gz
    • f3.gz
    • f4.gz
    • f5.gz
    • f6.gz

Installation, configuration et téléchargement des éléments nécessaires

Installation des logiciels nécessaires

Installation des logiciels sous Debian :

sudo apt install perl gzip vim wget simh

Installation des logiciels sous FreeBSD :

sudo pkg install perl vim wget open-simh
Choisissez l'éditeur de texte de votre choix, vim n'est pas forcément l'idéal pour tout le monde.
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 && sudo apt-get -f install

.

Construction des répertoires pour Unix version 7 et téléchargement de ses sets

Création répertoires pour la V7 :

mkdir -p emulateur/simh/Unix-V7

Se rendre dans le répertoire Unix-V7 :

cd emulateur/simh/Unix-V7/

Téléchargement des sets de la V7 :

wget -r -np https://www.tuhs.org/Archive/Distributions/Research/Keith_Bostic_v7/

Déplacer les sets dans le répertoire courant :

mv -v www.tuhs.org/Archive/Distributions/Research/Keith_Bostic_v7/f*.gz .

Suppression du répertoire www.tuhs.org devenu inutile :

rm -rf www.tuhs.org/

Décompression des sets et création de la bande Unix version 7

Décompression des sets avec gzip :

gzip -d *.gz

Fichier perl pour créer la bande :

mkdisttap.pl
#!/usr/local/bin/perl -w
use strict;
 
# Based on mkdisttap.pl
# ftp://ftp.mrynet.com/pub/os/PUPS/PDP-11/Boot_Images/2.11_on_Simh/211bsd/mkdisttap.pl
 
#
# $Id: mkdisttap.pl,v 1.1 2006/09/16 23:33:46 kirk Exp kirk $
#
 
# Based on the example in the HOWTO using dd.  Does not work!
# add_file("cat mtboot mtboot boot |", 512);
 
# Based on the maketape.c program and the maketape.data data file.
add_file("f0", 512);
end_file();
add_file("f1", 512);
end_file();
add_file("f2", 512);
end_file();
add_file("f3", 512);
end_file();
add_file("f4", 512);
end_file();
add_file("f5", 10240);
end_file();
add_file("f6", 10240);
end_file();
end_file();
 
sub end_file {
  print "\x00\x00\x00\x00";
}
 
sub add_file {
  my($filename, $blocksize) = @_;
  my($block, $bytes_read, $length);
 
  open(FILE, $filename) || die("Can't open $filename: $!");
  while($bytes_read = read(FILE, $block, $blocksize)) {
    if($bytes_read < $blocksize) {
      $block .= "\x00" x ($blocksize - $bytes_read);
      $bytes_read = $blocksize;
    }
    $length = pack("V", $bytes_read);
    print $length, $block, $length;
  }
  close(FILE);
}
Sous GNU/Linux il faut modifier le shebang (première ligne du fichier) #!/usr/local/bin/perl -w par #!/usr/bin/perl -w du fichier mkdisttap.pl.

Création du fichier mkdisttap.pl afficher ci-dessus avec votre éditeur de texte préféré :

vim mkdisttap.pl

ou :

nano mkdisttap.pl

Rendre le script perl mkdisttap.pl exécutable :

chmod 755 mkdisttap.pl

Création de la bande d'installation pour la V7 :

./mkdisttap.pl > v7.tap

Suppression des fichiers devenus inutiles :

rm f* mkdisttap.pl

Processus d'installation et de configuration d'Unix version 7

Création du fichier install.ini :

vim install.ini

Boot via le fichier install.ini avec le simulateur pdp11 de SimH :

pdp11 install.ini

À partir du simulateur

Après Boot : tapez :

tm(0,3)

ensuite :

5000
hp(0,0)
tm(0,4)
tm(0,5)
hp(0,0)

appuyer sur la touche Entrer.

hp(0,0)hptmunix
STTY -LCASE NL0 CR0

pour passer de l'affichage en majuscule en minuscule.

Supprimer les anciens noyaux :

mv hptmunix unix
rm hp*ix
rm rp*ix
ls *ix

doit afficher seulement le noyau unix.

Création des périphériques RP06 dans /dev :

cd /dev
make rp06

Créer les périphériques TU10 dans /dev :

make tm

Création d'un système de fichiers vierge sur disque RP06 :

cd /
/etc/mkfs /dev/rp3 322278
icheck /dev/rp3

Avance rapide de la bande et restauration de la tranche /usr :

dd if=/dev/r#nrmt0 of=/dev/null bs=20b files=6
restor rf /dev/rmt0 /dev/rp3

appuyer simplement sur la touche Entrer.

Montage de la tranche /usr, clonage du bloc de démarrage et synchronisation du disque RP06 :

/etc/mount /dev/rp3 /usr
dd if=/usr/mdec/hpuboot of=/dev/rp0 count=1

appuyez sur la combinaison de touche CTRL+E pour stopper le simulateur et à l'invite sim> appuyez sur la touche q pour quitter l'émulateur SimH.

Sur votre terminal hôte

Création du fichier boot.ini pour pouvoir booter sur votre nouvelle installation d'Unix version 7 :

vim boot.ini

Vous pouvez supprimer le fichier install.ini et la bande d'installation v7.tap :

rm install.ini v7.tap

Démarrer Unix version 7 à partir de boot.ini :

pdp11 boot.ini

Retour à votre simulateur PDP-11 SimH

Juste après l'affichage de Disabling XQ, tapez :

boot

ensuite :

hp(0,0)unix

puis passer en mode multi-utilisateur avec la combinaison de touche CTRL+D.

Désormais on vous demande d'entrer votre login, tapez :

root

suivie du mot de passe :

root

Vous pouvez à présent faire la découverte d'Unix version 7 !

Lorsque vous souhaitez revenir au terminal de votre hôte, stopper le simulateur PDP-11 avec la combinaison de touche CTRL+E puis arrivé à l'invite sim> vous pouvez quitter l'émulateur SimH avec la touche q.

wiki/virtualisation_et_emulation/simh/tutos/unix-v7.1759269182.txt.gz · Dernière modification : de Thibault Seguin