UNIX version 7 on PDP-11 on simh
参照回数[]
いにしえの UNIX version 7 を simh の PDP-11 エミュレータ上で動かす
ことができます。現在のUNIX系OSの基礎となったOSを実際に体験できる事
は大変素晴しいです。
それでは、インストール時の手順を記します。
simh V2.9-9 のインストール
UNIX version 7 のインストール
設定&ブート方法
- vi
UV7
- simhv29-9/BIN/pdp11 UV7
- boot
- rl(0,0)rl2unix
ここまでの操作でシングルユーザモードで起動する
- mkdir /tmp /usr/tmp
- chmod 1777 /tmp /usr/tmp
- cd /dev
- make rl tm rp03
- ln /dev/rl0 /dev/swap
- chmod go-w swap
- cp /rl2unix /unix
- [CTRL]+D
シングルユーザモードのシェルを終了することでマルチユーザモードへ
移行する
- login: root
- Password: root
ここまでの操作でマルチユーザモードで起動する(^^)/
そして、遊ぶ
次に停止方法
- sync;sync;sync
- kill 1
- [CTRL]+E
- sim> quit
カーネルの再生成までの手順
/usr/sys 以下のソースを取得
- export http_proxy=http://lib100:8080
- wget --proxy=on -m -np
ftp://ftp.ics.es.osaka-u.ac.jp/pub/mirrors/UnixArchive/PDP-11/Trees/V7/usr/sys/
/usr/sys 以下のソースをテープイメージに変換
- cd ftp.ics.es.osaka-u.ac.jp/pub/mirrors/UnixArchive/PDP-11/Trees/V7/usr/
- find . -name '\?*' -exec rm \{\} \;
- find . -name 'index.html' -exec rm \{\} \;
- tar cvf ../../../../../../../../add.tar sys
- cd ../../../../../../../../
- vi
tar2tap.pl
- ./tar2tap.pl <add.tar >add.tap
- マルチユーザモードで立ち上げ
/dev/rmt0 に テープイメージファイルをマウント
- [CTRL]+E
- det tm0
- att tm0 add.tap
- c
/dev/rl1 に /usr/sys, /usr をお引っ越し
- /etc/mkfs /dev/rl1 20480
- mkdir /mnt
- /etc/mount /dev/rl1 /mnt
- cd /mnt
- cat /dev/rmt0 | tar xvf -
- cd /usr
- tar cf - . | (cd /mnt; tar xvf -)
- rm -fr /usr/*
- ed
/etc/rc
/etc/mount ... の行を修正する
- sync;sync;sync
- /etc/umount /dev/rl1
- 一度停止し、マルチユーザモードで再度立ち上げ直す
- cd /usr/sys/conf
- cp rltmconf unixconf
- ed
unixconf
デバイス rp を追加してみる
- chmod +x mkconf
- ./mkconf <unixconf
- rm *.o unix
- make
- cp /unix /ounix
- cp unix /unix
- 再起動して動作確認
df コマンドの修正
実は、df コマンドの対象となるパーティション情報が /usr/src/cmd/df.c に
直接記述されてます。これを実際のインストールした環境に合わせてやらないと
df コマンドが正しく動作しません。
先頭のあたりに
char *dargv[] = {
0,
"/dev/rp0",
"/dev/rp3",
0
};
という箇所があるので、これを
char *dargv[] = {
0,
"/dev/rl0",
"/dev/rl1",
0
};
と修正し
cc -o df df.c
mv df /bin/df
しました。
参考ページ
リンクいただいております:)
Return to top page of Masa's WebPage
introduction of kyoto internet people
[更新]