PC UNIXの起動と起動ファイルの解読

YAMAMORI Takenori ●yamamori

●電源投入からブートローダ読み込みまで(起動0%〜5%)

OSのブートというのは,鍵箱の中に閉じ込められた鍵を取り出して 鍵箱を開けるという行為に似ています.

PCの電源投入時点で動作しているプログラムは, マザーボードのフラッシュROMなどに書き込まれたBIOSしかありません. これは,どんなOSをブートする場合でも同じです. OSをブートするには,このBIOSを手がかりにして次々に 鍵箱を開けて行かなければならないのです.

BIOSは,これからブートされるOSがどんなOSであるかについては全く知りません. ここでBIOSがすることは,ブート可能なメディア(起動ドライブ)の ブートセクタを読み込んで,そこに書かれたプログラム(通常はブートローダ)に 制御を移すことだけです. 起動ドライブはBIOSの設定画面で,優先順位をつけて設定できます. 通常は,フロッピーディスク→CD-ROM→ハードディスクの順に設定しておくと さまざまな場面に対応でき便利でしょう.(図(award60.gif))

●図 Award BIOS 6.0での起動ドライブの設定画面
award60.gif

※注
SCSIハードディスクから起動するには,拡張BIOS付きのSCSIカードが必要です.
※注
PXE(Preboot eXecution Environment)などのブートROMを搭載したネットワークカードがあれば,ネットワークからもブートできます.


なお,BIOSにもいくつかの種類やバージョンがありますが, これらはPCのマザーボードに固有のもので,アップグレードは可能な場合があるものの, BIOSの種類を変更したりすることはできません.

ハードディスクからブートする場合,BIOSによって最初に読み込まれるのは ハードディスクの一番最初のセクタであるMBR(Master Boot Record)です. MBRの中の最初の446バイトには何らかのブートローダが書き込まれており, ここからOSのブートが始まります.


To『PC UNIXの起動と起動ファイルの解読』[index]


このページは、技術評論社 「SoftwareDesign 2001年9月号、『起動ファイルから解読するPC UNIX』の原稿を元に、Web 用に再構成したものです。
To 謎の処理系 SunOS 4.1.4 [Home]
yamamori