|
次のページ
前のページ
目次へ
2. ハードウェアまず、コンピュータの電源を入れると、コンピュータはすべてが稼働できる状態にあ るかを自己診断する。これは、パワーオンセルフテスト(Power on self test)と呼ば れる。次に ROM BIOS に置かれたブートストラップローダ(bootstrap loader)という プログラムが、ブートセクタを探す。ブートセクタとはディスクの先頭のセクタで、 オペレーティングシステムを(メモリに)ロードする機能を持った小さなプログラムが 乗っている。ブートセクタの 0x1FE(=510) バイト目には 0xAA55(=43605) のマジックナ ンバー(訳注:ファイル形式を判断するためのナンバー)がマークされている。マークさ れた位置はセクタの末尾 2 バイトに当たる。このマークの有無で、そのセクタが ブートセクタであるかどうかをハードウェア側で識別できるわけである。
ブートストラップローダには、ブートセクタを探すべき場所のリストが収められてい
る。わたしの古いマシンは、プライマリフロッピードライブを探したあと、プライマ
リハードドライブを探す。もっと新しいマシンでは CD-ROM のブートセクタを探すこ
ともできる。ブートセクタが見つかれば、そこにあるプログラムをメモリにロードし
それに制御を任せる。そしてそのプログラムが、オペレーティングシステムをロード
する。
典型的な Linux システムでは、そのプログラムとは
PC のハードウェアの動作について語るべきことは確かにまだまだあるのだが、ここは それを述べるべき場所ではない。PC のハードウェアに関しては良書がそろっているから そのひとつを読んでほしい。
2.1 設定マシンはある種の自己情報を CMOS 内に保持している。その中には、どういうディス クや RAM がシステムに存在するのかという情報も含まれる。マシンの BIOS にあるプ ログラムを使えばそうした情報の設定変更ができる。電源を入れたときスクリーンに 表示されるメッセージに注意すれば、どうやってそのプログラムにアクセスするか分 かるだろう。わたしのマシンでは、オペレーティングシステムがロードされる前に delete キーを押すようになっている。
2.2 演習中古部品を使ってマシンを組み立てることは、PC ハードウェアを知る上で良い方法で ある。最低でも 386 CPU を手に入れよう。そうすれば、簡単に Linux を走らせるこ とができる。それほど費用はかからないだろう。周囲の友人に尋ねてみれば、必要な パーツを譲ってくれるかもしれない。
uniosをダウンロード
し、コンパイルしてブートディスクを作ること。(これまでは下記にホームページが
あったのだが、消えてしまった。
http://www.unios.org)
hex editor を使って unios のブートディスクイメージを開くこと。このイメージは
512 バイトあり、ちょうど 1 セクタ分である。マジックナンバー 0xAA55 を探すこ
と。起動用フロッピーディスクやコンピュータにあるブートセクタでも同じことをし
てほしい。 LILO のブートローダのコードもチェックすること。
2.3 参考文献等
次のページ 前のページ 目次へ |
[ |