ホーム > タグ > inferno
inferno
inferno in QEMU on WindowsXP

QEMUにNative infernoをインストールしたときのメモ
- 準備
- QEMU on Windowsをダウンロード
- inferno CD 2007May10をダウンロード
- QEMUを適当なところに解凍する(例:”C:\QEMU”)
- infernoCDをQEMUのディレクトリ内に解凍する(例:”C:\QEMU\inf.iso”)
- インストール
- 1GBのHardDiskImageの作成(コマンドプロンプト)
C:\QEMU>qemu-img create -f qcow inferno.img 1G - infernoCDからBoot(コマンドプロンプト)
C:\QEMU>qemu -L . -m 128 -boot d -cdrom inf.iso -hda inferno.img - インストールシェルスクリプトの実行(QEMU)
;sh install.sh -m /dev/sdD0 /dev/sdC0 - パーティションをPlan9で作成(QEMU)
>>> a p1 start cylinder: 0 end [0..1024] 1024 >>> A p1 >>> w >>> q - 再起動されるので再度インストールシェルスクリプトを実行(QEMU)
;sh install.sh /dev/sdD0 /dev/sdC0 >>> w >>> q - 「Remove the CD and reboot」と表示されたらQEMUのWindowsを閉じる
- 1GBのHardDiskImageの作成(コマンドプロンプト)
- 起動確認
- (コマンドプロンプト)
C:\QEMU>qemu.exe -L . -m 128 -hda inferno.img -net nic,model=rtl8139 - (QEMU)
; wm/wm wmlib: can't allocate Display: .initdisplay: /dev/draw/new: ;
とりあえず、動きはしたけれど、GUIが立ち上がらない。
VGAが見えてない?
QEMUはCL-GD5446をエミュレートしてらしい。
で、ソースをあさってみると os/pcに- vgaclgd542x.c
- vgaclgd546x.c
はあった。つまり・・・未対応?
もしかしたら応用でドライバかけるかもしれないけど今のところ見送り
QEMUはVESA起動もできるみたいなのでそちらも試してみる- (コマンドプロンプト)
C:\QEMU>qemu.exe -L . -m 128 -hda inferno.img -net nic,model=rtl8139 -vga std - (QEMU)
; wm/wm wmlib: can't allocate Display: .initdisplay: /dev/draw/new: ;
やっぱり駄目っぽい。
このCDに入ってるカーネルにはVGAドライバが組み込まれてないのかな?
このCD起動カーネルと昨日のFD起動カーネルではファイルサイズが結構違う。
つまり、コンパイルした内容が違うってことだろうけど、
このCDのカーネルと差し替えれるカーネルをつくるにはどうすればいいんだろう。
CDのカーネルと同じコンパイル条件を作りたいんだけど、
そもそもコンパイルオプションとかがよくわかってない。 - (コマンドプロンプト)
- 参考
inferno in VirtualBox on WindowsXP

inferno を VirtualBox上で動くように Ubuntu で コンパイル したときのメモ
- ソースコードの入手
- $apt-get install mercurial
- $cd /usr
- $sudo hg clone https://inferno-os.googlecode.com/hg/ inferno
- $sudo chmod -R 777 /usr/inferno
どうも、コンパイルが通らないのでVita Nuovaのバージョンを利用する。
- inferno Fourth Edition(inferno-20100120.tgz)をダウンロード
- inferno-20100120.tgzを解凍し、中身を/usr/inferno/へ上書き
- コンパイル用ライブラリのインストール
- $sudo apt-get install libxpm-dev
- $sudo apt-get install libxext-dev
- $sudo apt-get install x11proto-xext-dev
- infernoのコンパイル
- $sudo vi inferno/mkconfig
@@ -17,0 +18,0 @@ - SYSHOST=Plan9 +# SYSHOST=Plan9 + SYSHOST=Linux @@ -25,0 +27,0 @@ -# OBJTYPE=368 - OBJTYPE=$objtype + OBJTYPE=368 +# OBJTYPE=$objtype - $sh makemk.sh
- $export PATH=$PATH:/usr/inferno/Linux/368/bin/
- $mk nuke
- $mk install
- $sudo vi inferno/mkconfig
- PBS(PCパーティションブートセレクタプログラム)と9load(カーネルローダ)のコンパイル
- $mkdir /usr/inferno/Inferno/386/lib/
- $sudo chmod -R 777 /usr/inferno/Inferno/386/lib/
- $cd /usr/inferno/os/boot/pc/
- $mk pbs.install 9load.install
- カーネルコンパイル
- $cd /usr/inferno/os/pc
- $vi ether79x970.c
@@ -540,6 +540,7 @@ switch(x&0xFFFFFFF){ case 0x2420003: /* PCnet/PCI 79C970 */ case 0x2621003: /* PCnet/PCI II 79C970A */ + case 0x2625003: /* PCnet/FAST III 79C973 */ break; default: print("#l%d: unknown PCnet card version %.7ux\n", - $vi pc
@@ -48,10 +48,11 @@ kern link - ether2114x pci + ether79c970 pci +# ether2114x pci # ether82557 pci - ether83815 pci - etherelnk3 pci +# ether83815 pci +# etherelnk3 pci ps2mouse ethermedium # pppmedium ppp compress @@ -70,7 +71,7 @@ math init - wminit + shell code int kernel_pool_pcnt = 10; @@ -79,7 +80,7 @@ int image_pool_pcnt = 40; int cflag=0; int swcursor=0; - int consoleprint=0; + int consoleprint=1; port alarm @@ -137,3 +138,5 @@ /dis/lib/daytime.dis /dis/lib/auth.dis /dis/lib/ssl.dis + /dis/lib/arg.dis + /dis/lib/filepat.dis - $mk
- カーネルロード設定ファイルの作成
- $vi /usr/inferno/os/pc/plan9.ini
bootfile=fd0!ipc.gz
- $vi /usr/inferno/os/pc/plan9.ini
- フロッピーイメージの作成
- $emu
- ;cd os/pc
- ;gzip ipc
- ;disk/format -b /Inferno/386/pbs -df inferno.img /Inferno/386/9load plan9.ini ipc.gz
出来上がったinferno.imgをVirtualBoxにマウントしBoot
確かに起動はできたが、たまにPanicを起こす。
infernoもPlan9系だからVirtualBoxではだめなのかもしれない。
それに、Native infernoをコンパイルできたけど、FD起動なんだよね。
Plan9のブートローダで起動可能ってことはこれで分かったんだけど、
HDDからブートさせたい・・・Native infernoを使うにはPlan9の勉強した方がいいかもしれない。
次回はinferno in QEMU on WindowsXPを試してみよう。 - 参考
ホーム > タグ > inferno
- 検索
- フィード
- 翻訳










