ローダブル・カーネル・モジュール
Linuxにおけるモジュールはシステムレベルの機能を実行するルーチンの集まりである。それらは特定のデバイス利用のためのデバイスドライバやファイルシステム、通信プロトコルのためのシステムルーチンを含む、カーネルにリンクされていないオブジェクトファイルであり、システムを再起動せずそれらを利用可能にする。場合によっては、実際にデバイスを利用する場合、MAKEDEVを使用して静的にデバイスファイルを作成する、もしくはudevを利用してホットプラグを行い動的にデバイスファイルを生成する必要がある。
公式のカーネルソースはメインライン (mainline) カーネル、もしくはメインストリーム (mainstream) カーネルと呼ばれるが、目下開発中で未だメインラインに採用されていないデバイスドライバ、GPLと非互換なライセンスで配布されているためメインラインにマージされないモジュール、または自由な改変が全く許されないプロプライエタリなモジュールをビルドするには、カーネルビルドのインフラを間接的に利用する。したがって外部のカーネルモジュールのビルドのためには、カーネルのビルドが正常に終了した完全なカーネルソースコードのコピーがあればよい。もしくはその中から一部のビルドツールやヘッダファイルを抽出したものを用意すればよい。前者はユーザーが独自にカーネルをビルドすることで得られる。後者は、ユーザーが独自に用意することもできるが、多くのLinuxディストリビューションでは、この様な機能を持つパッケージを提供している場合がある。またディストリビューションにより、この低レベルビルドインフラをよりユーザーフレンドリーなツールを介してビルドできるパッケージ も用意されている場合がある。