9.4. カーネルドライバ、サブシステムとモジュール

カスタムカーネルを構築する前に、再構築する理由を考えてください。 ある特定のハードウェアに対応することが目的であれば、 そのハードウェアに対応するためのモジュールがすでに用意されている場合には再構築の必要はありません。

カーネルモジュールは、 /boot/kernel にあり、kldload(8) によって、 すでに実行中のカーネルに動的に読み込まれているモジュールもあるかもしれません。 すべてというわけではありませんが、ほとんどのカーネルドライバには、 読み込み可能なモジュールやマニュアルページが用意されています。 たとえば、ath(4) ワイヤレスイーサネットドライバのマニュアルページには以下の記述があります。

Alternatively, to load the driver as a module at boot time, place the following line in loader.conf(5): if_ath_load="YES"

/boot/loader.confif_ath_load="YES" を追加すると、 起動時にモジュールが読み込まれるようになります。

ただし、対応するモジュールが存在しないこともあります。 特定のサブシステムでは、ほとんど多くの場合存在しません。 ドライバが必要かどうかを知る一つの方法は、 モジュールそのものを調べることです。

警告:

デバイスやオプションのサポートを外すことは簡単で、 その結果、カーネルを壊すことがあります。 たとえば、ata(4) ドライバをカーネルコンフィグレーションファイルから除くと、 ATA ディスクドライバを用いるシステムは起動しません。 確信が持てないものについては、 カーネルにサポートを残したままにしてください。

本文書、および他の文書は ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/ からダウンロードできます。

FreeBSD に関する質問がある場合には、 ドキュメント を読んだ上で <questions@FreeBSD.org> まで (英語で) 連絡してください。

本文書に関する質問については、 <doc@FreeBSD.org> まで電子メールを (英語で) 送ってください。