SunOS 4.x とは異なり、SunOS 5.6 のカーネルは、動的に構成されます。したがって、システム構成に変更を加えても、システム管理者が手作業でシステムを再構築する必要はありません。
SunOS 5.5 以降、カーネルとそのモジュールはプラットフォーム非依存オブジェクトとプラットフォーム依存オブジェクトに分割されました。プラットフォーム非依存カーネルは /kernel/genunix と呼ばれる小さい静的コアと動的にロード可能なカーネルモジュールで構成されています。動的にロード可能なカーネルモジュールは、プラットフォーム非依存の場合は /kernel ディレクトリと /usr/kernel ディレクトリに格納され、プラットフォーム非依存の場合は /platform ディレクトリと /usr/platform ディレクトリに格納されます。プラットフォーム依存ディレクトリとその内容については、『Solaris のシステム管理』を参照してください。
ドライバ、ファイルシステム、STREAMS モジュール、その他のモジュールは、ブート時か実行時に、必要に応じて自動的にロードされます。modinfo(1M) コマンドは、現在システムにロードされているモジュールに関する情報を表示します。
modload(1M) と modunload(1M) の各コマンドは、リリース 5.6 でも利用できますが、動作が変更されています。これらのコマンドの用途は限られたものとなっており、ロード可能ドライバをシステムにインストールするには、もはや十分ではありません。 modunload(1M) コマンドは、SunOS 4.x のコマンドに似ていますが、現在は、次の例のように、アンロード可能な (そして使用されていない) すべてのモジュールをアンロードする機能を備えています。
# modunload -i 0 |
第 18 章「システムとデバイスの構成」ではこれらの項目について詳細に説明します。
カーネルの内容は、以前は 1 つのファイル /vmunix に入っていましたが、現在、プラットフォーム非依存とプラットフォーム依存のディレクトリ階層内の複数のモジュールになっています。デフォルトでは、ディレクトリ階層は以下のようになっています。
/kernel
/usr/kernel
/platform
/usr/platform
/etc/system ファイル内の moddir 変数を使用して、モジュールのディレクトリ検索パスを設定することも可能です。system(4) のマニュアルページを参照してください。通常は、/kernel/genunix はロードされるカーネルの先頭部分になります。詳しくは、system(4) とkernel(1M)を参照してください。