2026/02/09

2.11BSDを動かす試み その3

 シングルユーザモードの起動に成功

initがautoconfigを起動するあたりから進まなかったのはメモリ不足が原因のようです。

カーネルのコンフィグレーションを編集して不要なドライバを削除し、29KBほど メモリを増やしてブートしたところ、以下のようにシングルユーザモードのshが起動しました。

 73Boot from tm(0,0,0) at 0172522
: rk(0,0)unix
Boot: bootdev=03000 bootcsr=0177404

2.11 BSD UNIX #13: Mon Feb 9 14:22:07 PST 2026
    root@curly.2bsd.com:/usr/src/sys/SMALL


phys mem  = 253952
avail mem = 60096
user mem  = 307200
swap size = 311808

February  8 22:16:04 init: configure system

autoconfig: couldn't find symbols in /unix.
February  8 22:16:05 init: configuration setup error

erase, kill ^U, intr ^C
#

("swap size..."の表示はデバッグ用に足したものなので、オリジナルのカーネルでは表示されません。 )

autoconfigが動かないのでテープデバイスが使えませんが、気にしないことにします。メモリがかつかつでマルチユーザモードまでもっていっても実用性はあまりないような気がするので、「2.11BSDはこれで動いた」ことにします。

今後の予定

需要があるかどうかわかりませんが、2.11BSDをインストールするための手順やデバイスドライバの変更内容などについては文書化するつもりです。 

0 件のコメント:

コメントを投稿

TangConsoleDCJ11MEMにおける2BSDの誤動作の調査 その3

誤動作の原因の二つ目が判明しました。 符号なし2進数と符号付2進数の比較 後述するSOFUB_MAPの実装に符号なし2進数と符号付2進数を比較しているコードがありました。直接の比較ではありませんでしたが、符号なし整数の値を符号付整数の変数に代入し、その変数と定数を比較していたため...