「オペレーティングシステム」の版間の差分
削除された内容 追加された内容
編集の要約なし |
|||
720 行
:※ いちおう、本書でも、初等的なブートローダのコードを記載している(※ 後述)。
== Bochs の使い方 ==
ネット上に Bochs の使い方の入門書がぜんぜん無いので、wikibook で教えることにする。
Bochsでは、アセンブルはできない。
Bochsの用途は、すでに別ツール(たとえば nasm んど)で作成ずみの img ファイルをBochsで起動するだけのものである。
asmファイルからimgファイルへのアセンブルは、あらかじめ nasm などで行っておく。
Bochsの利便性は、コマンドを覚えなくて言いことである。起動コマンドのBochsだけ押せばウィンドウが起動するので、あとはそのウィンドウ側でGUI的に操作してエミュレータの起動をできるという便利ツールなエミュレータが Bochs である。
さて、Boshs をインストールしてから、環境変数(パス)の設定を終えれば、
コマンドプロンプトで、コマンド <code>bochs</code> で起動する。つまり
ユーザー名>bochs
のように「bochs」の部分を入力する。
で、起動するとダイアログ画面が現れる。
さて、これだけでは、そもそも何のファイルを起動するかすらも設定されてない。なので、これから、このダイアログ画面で、それを設定する。
まず、真ん中の項目(中央ペイン)にある「Edit Option」 の「Disk & boot」をダブルクリックすると、画面が遷移して、
オプション画面である「Bochs Disk Options」画面になる。この項目で、何のファイルを起動するかを設定できる。
そのためには、
その「Bochs Disk Options」画面の中で、タブ「ATA Channel 0」> 子タブ「First HD/CD on Channel 0」 をクリックすると出てくる画面に、
上から2段目あたりに
:Path or physical device name <span style="border-style:inset"> </span> <span style="border-style:outset">Browse</span>
という項目があるので、その <span style="border-style:inset"> </span> のなかに、起動したいimgファイル名を入れる。
たとえば、「testos.img」ファイルを起動したいなら、
:Path or physical device name <span style="border-style:inset">testos.img </span> <span style="border-style:outset">Browse</span>
のようになる。
こうして、(おそらく)あとはこのオプション画面を終了して(ダイアログ・ウィンドウの右上のクローズ用の×ボタンを押せばいい)メインメニュー画面に戻り、右ペインにあるStartボタンを押せばいい。
Panic ウィンドウが表示されて Message 欄に「specified geometry doesn<nowiki>'</nowiki>t fit on disk」 と書いてあるが、このまま左下の欄にある Continue をクリックして、OKを押せばいい。
なお、Path or physical device name の設定をしてないで空欄のままにしておくと、Startの際に Message 欄に 「no bootable device」 と出る。
BochsのDtart>OKの後のエミュレート起動後の終了方法は、ウインドウの上部にあるメニューバーの右側のほうに、○印の中にタテ線「|」のある終了ボタン「(|)」があるので、これを押せばいい。(右上の×ボタンは使えない。×ボタンをクリックしても反応しない。)
== 擬似命令を使ってブートローダを作ろう ==
|