こんにちはユキトモです。
今回は「モジュール」について簡単に解説していきます。
この記事でわかること
- モジュールの概要が分かります。
モジュール
簡単に言うと
「メインとなるカーネルのプログラムに組み込んで使用する、小さなパーツのようなプログラム」
です。
モジュール(module)は、「交換可能な部品」という意味を指します。
Linuxでモジュールと言えば多くの場面でカーネルに組み込むモジュールを指します。
ですがモジュールという考え方はハードウェアまたはプログラミングなどで取り入れられている考え方です。
例を挙げると、カーネルのモジュールついて解説します。
カーネルのモジュールは、「メインとなるカーネルのプログラムに組み込んで使用する、小さなパーツのようなプログラム」です。
なので、モジュールだけでは何も使用することはできません。
カーネルに付けて使うという考え方です。
モジュールが利用されるのは、例を挙げると新しいデバイスや新しい機能を追加するときに使われます。
デバイスに対するドライバはモジュールとして提供されると考えるといいでしょう。
対応するモジュールをカーネル本体に取り付けて使います。
これをモジュールとしないでカーネル本体に直接組み込んでしまったとします。
すると、いつ、どのデバイスが必要になるかわかりません。
なので多数のプログラムを付け加えることになり、カーネルのファイルサイズが大きなものになってしまいます。
さらにメモリの消費量がとても大きなものになってしまいます。
また新しいデバイスがリリースされて利用したい場合は、
カーネルにプログラムを書き加えた上でコンパイルする必要が生じることになります。
これではともて面倒な作業が発生します。
そこで「モジュール」を使うと必要なデバイスや機能だけを選択して組み込むことができます。
なので、カーネルのファイルサイズを小さくできます。
さらに利点として新しいデバイスや機能がリリースた場合でもカーネルをコンパイルし直す必要はありません。
モジュールの欠点としては、
モジュールにすることができない機能も多数あります。
モジュール化するとマシンの処理速度が低下することもあります。
モジュールを管理するコマンド
「modprobeコマンド」があります。
モジュールをロード(取り付け)することができるコマンドです。
モジュールには依存関係が存在するものがあります。
modprobeコマンドはこの依存関係を確認しながらモジュールをロードします。
そのため、モジュールをロードする場合にはmodprobeコマンドを利用するのがおすすめでしょう。
以上、モジュールの概要の解説でした。