kldstat(2) FreeBSD 一般コマンドマニュアル

kldstat

前のページ 上に戻る 次のページ

kldstat




書式

     #include <sys/param.h>
     #include <sys/linker.h>

     int
     kldstat(int fileid, struct kld_file_stat *stat);


解説

     kldstat() 関数は、 fileid によって参照されたファイルに関する情報を stat
     に書込みます。

     struct kld_file_stat {
             int         version;        /* sizeof(linker_file_stat) に設定 */
             char        name[MAXPATHLEN];
             int         refs;
             int         id;
             caddr_t     address;        /* ロードアドレス */
             size_t      size;           /* バイト単位のサイズ */
     };

     version     このフィールドは、 kldstat() 自体ではなく、 kldstat() を呼び
                 出すコードで前述した構造体のサイズに設定します。

     name        fileid によって参照されるファイルの名前

     refs        fileid によって参照されるモジュールの数

     id          fileid で指定されたファイルの ID

     address     kld ファイルのロードアドレス

     size        ファイルのサイズ


戻り値

     関数 kldstat() は、処理が成功すると値 0 を返します。そうでない場合、値 -1
     が返され、グローバル変数 errno が設定されてエラーを示します。


エラー

     次の場合を除いて、 fileid が参照するファイルに関する情報は stat が指す構
     造体に記入されます。

     [ENOENT]           ファイルが見つかりませんでした (おそらくロードされてい
                        ないのでしょう)。

     [EINVAL]           stat の version フィールドで指定されたバージョンが適切
                        ではありません。 version フィールドに適切に記入してい
                        るのにこのエラーが起きた場合は、ワールド、カーネル、ま
                        たはアプリケーションを再構築する必要があります。

     [EFAULT]           copyout() 関数で、フィールドを stat にコピーする際に問
                        題がありました。

ABELNET VPSサービス