LinuCレベル2 システムの起動とLinuxカーネル 問32
システムの起動とLinuxカーネル/Linuxカーネルの構成要素カーネルの設定ファイル.configで、ある機能が「CONFIG_XXX=m」と設定されている。この機能の扱いの説明として適切なものはどれか。
当サイトのオリジナル問題(LinuCレベル2の出題範囲「システムの起動とLinuxカーネル」に対応。実際の試験問題ではありません)
- Aカーネルイメージ本体に組み込まれ、起動した時点から常に有効になっている
- Bビルドの対象から外され、カーネル本体にもモジュールにも含まれない
- C本体に組み込まれるが、起動パラメータで指定するまでは無効になっている
- Dモジュール(.ko)としてビルドされ、必要になったときにカーネルへ読み込む
正解:D
解説
カーネルの設定項目は、y(本体に組み込む)、m(ローダブルモジュールとしてビルドする)、n(ビルドしない)のいずれかで指定します。mの機能は.koファイルとして/lib/modules/カーネルバージョン/配下にインストールされ、modprobeやudevによって必要なときに読み込まれます。使う環境が限られるドライバをモジュールにしておくと、カーネル本体を小さく保てます。
選択肢ごとの解説
- A誤り。これはCONFIG_XXX=yの場合の扱いです。
- B誤り。これはCONFIG_XXX=n(または設定なし)の場合の扱いです。
- C誤り。mは本体への組み込みではなく、モジュールとしてビルドする指定です。
- D正しい。mはローダブルモジュールとしてビルドする指定で、必要に応じてロード・アンロードできます。