FreeBSD ハンドブック
前のページ | 第 9章FreeBSD カーネルのコンフィグレーション | 次のページ

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

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

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

    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.conf` ファイルに `if_ath_load="YES"` 行を追加すると、 起動時にモジュールが読み込まれるようになります。

ただし、特定のサブシステムであったり、 とても重要なドライバのような場合には、 対応するモジュールが存在しないこともあります。 たとえば、Fast File System (FFS) は、 カーネルでのみ設定可能なオプションです。 ネットワークサポート (INET) も同様です。 残念ながら、ドライバが必要かどうかを知るには、 モジュールそのものを調べる方法しかありません。

> 警告カーネルを壊すことは簡単で、 デバイスやオプションのサポートをビルドから削除するだけで壊れてしまうことがあります。 たとえば、ata(4) ドライバをカーネルコンフィグレーションファイルから除くと、 ATA ディスクドライバを用いるシステムは、 `loader.conf` に記述がないかぎり起動しません。 もし、確信がないのであれば、モジュールを確認し、 カーネルにサポートを残したままにしてください。

前のページ | ホーム | 次のページ
システムのハードウェアについて知る | 上に戻る | カスタムカーネルの構築とインストール

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

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