GNU Cライブラリ
Linuxのモジュール群は/lib/modulesディレクトリにバージョン毎に置かれ、バージョン2.6以降は拡張子 .ko ("kernel object"の意)が付されている。モジュールはカーネルに既に含まれている未解決シンボルを持ち、再配置可能なELFオブジェクトである。これはカーネルを一種の共有ライブラリと見なした場合の動的リンクされたライブラリといえるかもしれないが、GNU Cライブラリに動的リンクされた実行ファイルをロードする際に使用するld-linux.soなどといったローダを使用するのではなく、modutils（バージョン2.6以降はmodule-init-tools）パッケージに含まれるinsmod（もしくは高レベル処理を行う）コマンドを用いてカーネル空間にロードする。insmodコマンドを起動しモジュールをロードすると依存関係の解決など様々なチェックに通され、問題なければカーネル内に存在するシンボルの解決を行う。バージョン2.6以前はシンボル解決までの複雑な処理はユーザー空間のコマンドであるinsmodが処理していたが、パフォーマンス低下の問題からバージョン2.6からはinsmodはモジュールロードに使用するメモリアドレスにモジュールを単にコピーするだけの簡単なコマンドになっており、シンボル解決も含めた残りの処理はすべてカーネル空間で処理している。これはFreeBSDオペレーティングシステムにおける"Dynamic Kernel Linker"と類似している。モジュールのアンロードはロードの逆処理となるが、通常はモジュールの依存関係をチェックし、依存しているモジュールを検出した場合エラーを返しアンロードしない。そのような場合は全ての被依存モジュールを先にアンロードする、または特定のオプションを指定し依存しているモジュールも同時にアンロードする。