Solaris のシステム管理 (基本編)

x86: ブートプロセス

この節では、x86 システムに固有のブートプロセスについて説明します。

x86: システム BIOS

x86 システムの電源が入っているときには、システムは読み取り専用メモリー (ROM) の BIOS (Basic Input/Output System) によって制御されます。BIOS は、64 ビットおよび 32 ビットの x86 をサポートする、Oracle Solaris オペレーティングシステムのファームウェアインタフェースです。

ハードウェアアダプタには通常、そのデバイスの物理特性を表示するオンボード BIOS が搭載されています。この BIOS は、デバイスにアクセスするときに使用されます。システムの BIOS は、起動プロセス中に、アダプタの BIOS が存在するかどうかを調べます。アダプタが見つかった場合は、そのアダプタの BIOS を読み込んで実行します。アダプタの BIOS はそれぞれセルフテスト診断を実行してから、デバイス情報を表示します。

ほとんどのシステムの BIOS には、ブートデバイスの優先順位を選択するためのユーザーインタフェースが用意されており、次の項目が表示されます。

BIOS は、ブート可能なプログラムがある有効なデバイスが見つかるまで、このリストに従って各デバイスからブートを試みます。

x86: カーネル初期化プロセス

/platform/i86pc/multiboot プログラムは、マルチブート仕様に定義されているヘッダーを含む、ELF32 実行可能ファイルです。

マルチブートプログラムは、次のタスクを実行します。

システムの制御を渡されたカーネルは、CPU、メモリー、およびデバイスサブシステムを初期化します。カーネルは次に、ルートデバイスをマウントします。/boot/solaris/bootenv.rc ファイルに指定されている bootpath および fstype プロパティーに対応するデバイスがマウントされます。このファイルはブートアーカイブに含まれます。これらのプロパティーが bootenv.rc ファイルまたは GRUB コマンド行に指定されていない場合には、ルートファイルシステムはデフォルトで /devices/ramdisk:a 上の UFS に設定されます。インストールミニルートをブートする場合には、ルートファイルシステムはデフォルトで UFS に設定されます。ルートデバイスがマウントされたあと、カーネルは sched コマンドと init コマンドを初期化します。これらのコマンドは、サービス管理機能 (SMF) サービスを開始します。