HOMEサンプル問題・例題解説201試験の例題と解説201.5 実行時におけるカーネルおよびカーネルモジュールの管理/照会

201試験の例題と解説

201.5実行時におけるカーネルおよびカーネルモジュールの管理/照会

今回は、201試験の出題範囲から「201.5 実行時におけるカーネルおよびカーネルモジュールの管理/照会」についての例題を解いてみます。

■例題
カーネルモジュールの依存関係を解消しながらモジュールをロードするコマンドを記述しなさい。


※この例題は実際のLinuC試験とは異なります。

解答と解説

答えは modprobe です。

カーネルモジュールはデバイスドライバなど、様々な機能をカーネルから分離して任意にメモリにロードできるようにした仕組みです。使用したい機能に応じてモジュールをメモリにロードすることで必要な機能のみをメモリ上に配置でき、柔軟性と効率性を実現しています。

カーネルモジュールは機能毎にモジュールとして分割されているので、あるモジュールAの機能は他のモジュールBの機能を利用していることがあります。
その場合にはモジュールBも同時にメモリ上にロードされている必要があります。このような関係を「依存関係」と呼んでいます。
前述の例では「モジュールAはモジュールBに依存している」ことになります。

このようなモジュールの依存関係を利用者がすべて把握しておくことは困難なので、あらかじめ依存関係を調査しておき、依存関係にあるモジュールすべてを自動的にロードできるようになっています。
依存関係を調査するには depmodコマンドを実行します。依存関係の情報は/lib/modules/カーネルバージョン/modules.depファイルに記述されます。
答えとなったmodprobeコマンドは、引数に与えられたモジュールが依存しているその他のモジュールをこのファイルから読み取り、メモリに自動的にロードします。

  • 今回の解説について、理解できないポイントがあればどんどん質問を。
  • 採用になった方にはLPI-Japanオリジナルの記念品を贈呈します。
  • ご質問・ご意見はこちら
  • ※上記の解説とその内容については、例題作成者の監修です。
    内容や試験問題に関わるお問い合わせにつきましては、LPI-Japan事務局ではお応えできませんのでご了解ください。

このページのトップへ