コンテンツにスキップ

FreeBSD/kldstat

出典: フリー教科書『ウィキブックス(Wikibooks)』

kldstat は、FreeBSD において現在ロードされているカーネルモジュールの状態を表示するためのコマンドです。FreeBSDでは、カーネルの機能を拡張するためにモジュール(kld、Kernel Loadable Modules)を動的にロードすることができます。kldstat は、そのようなロードされたモジュールのリストを表示し、各モジュールの状態や情報を提供します。

kldstat の主な用途

[編集]
  1. 現在ロードされているカーネルモジュールのリストを表示する
    kldstat コマンドを実行することで、現在システムにロードされているすべてのカーネルモジュールのリストを確認できます。このリストには、モジュール名、モジュールがロードされたアドレス、モジュールのサイズ、バージョンなどの情報が含まれます。
    kldstat
    
    実行例:
    Id Refs Address            Size     Name
     1    4 0xc0400000  1b42000  kernel
     2    1 0xc0c42000    14800  if_re.ko
     3    1 0xc0c56000    1e600  acpi.ko
    
    ここでは、kernel(カーネル自体)、if_re.ko(ネットワークドライバモジュール)、acpi.ko(ACPI モジュール)などがロードされていることが分かります。
  2. モジュールの詳細情報を表示する
    kldstat は、システムのカーネルモジュールを管理するための便利なツールであり、モジュールが正しくロードされているか、またモジュールのバージョンなどを確認する際に役立ちます。
    • Id: モジュールの識別番号。
    • Refs: モジュールが参照されている回数(他のモジュールやカーネル機能からの依存関係)。
    • Address: モジュールがロードされているメモリアドレス。
    • Size: モジュールのサイズ(バイト単位)。
    • Name: モジュール名(ファイル名)。
  3. モジュールの確認とトラブルシューティング
    システムで問題が発生した場合、kldstat を使って、特定のモジュールが正しくロードされているかどうかを確認できます。たとえば、ドライバが正しく動作していない場合や、モジュールが欠けている可能性があるときに kldstat を使用することで、モジュールの状態を簡単に確認できます。

使い方

[編集]

基本的な使用例

[編集]
kldstat

このコマンドで、現在ロードされているすべてのカーネルモジュールがリストされます。

特定のモジュールの確認

[編集]

特定のモジュールがロードされているかどうかを確認したい場合、grep コマンドを組み合わせて使用することができます。

kldstat | grep <モジュール名>

たとえば、if_re.ko がロードされているかを確認する場合:

kldstat | grep if_re

モジュールのロードとアンロード

[編集]

モジュールを手動でロードまたはアンロードするには、kldloadkldunload コマンドを使用します。

  • モジュールのロード
    kldload <モジュール名>
    
  • モジュールのアンロード
    kldunload <モジュール名>
    

kldstat の出力例

[編集]

出力例は以下のようになります。

Id Refs Address            Size     Name
 1    4 0xc0400000  1b42000  kernel
 2    1 0xc0c42000    14800  if_re.ko
 3    1 0xc0c56000    1e600  acpi.ko

この例では、kernel モジュール(カーネル自体)をはじめ、if_re.ko(ネットワークインターフェースドライバ)、acpi.ko(ACPI制御用モジュール)などがロードされています。各モジュールのメモリアドレスやサイズも確認できます。

まとめ

[編集]

kldstat は、FreeBSD のカーネルモジュールの状態を確認するための便利なコマンドです。システムにロードされているモジュールのリストを表示し、モジュールの詳細情報を取得することができます。モジュールの管理やトラブルシューティングにおいて、kldstat は重要なツールの一つです。