QUERY_MODULE(2) | Linux Module Support | QUERY_MODULE(2) |
名前¶
query_module - モジュールに関連する各種の情報をカーネルに問い合わせる
書式¶
#include <linux/module.h> int query_module(const char *name, int which, void *buf, size_t bufsize, size_t *ret);
このモジュールについて¶
これは、Linux Kernel 2.4 の時代に使われていた modutils パッケージ所収の古いマニュアルです。(2022/12/02, Linux JM Project)
説明¶
query_module は、ローダブルモジュールに関連する情報をカーネルに問い合わせる。情報の フォーマットと正確な意味は、副関数 which によって異なる。 現在ロードされているモジュールを指すために name を必要とする関数 もあるし、カーネル固有であることを示すために name に NULL を指定できるものもある。
引き数 which の値¶
- 0
- 必ず成功を返す。システムコールを調べるために使われる。
- QM_MODULES
- ロードされている全てのモジュールの名前を返す。出力バッファのフォーマット は、NULL で終端する文字列を並べたものである。モジュールの数が ret にセットされる。
- QM_DEPS
- 指定されたモジュールが使っている全てのモジュール名を返す。出力バッファ のフォーマットは、NULL で終端する文字列を並べたものである。モジュール の数が ret にセットされる。
- QM_REFS
- 指定されたモジュールを使っている全てのモジュール名を返す。これは QM_DEPS と逆の機能である。出力バッファのフォーマットは、NULL で 終端する文字列を並べたものである。モジュールの数が ret にセット される。
- QM_SYMBOLS
- カーネルまたは指定されているモジュールがエクスポートしているシンボルと 値を返す。バッファのフォーマットは、以下の構造体
struct module_symbol {
unsigned long value;
unsigned long name; };
の配列に NULL で終端する文字列を続けたものである。name の値は buf の先頭から文字列までのオフセット文字数である。 ret にはシンボルの数がセットされる。
- QM_INFO
- 指定されたモジュールに関する様々な情報を返す。出力バッファのフォーマット を以下に示す:
struct module_info {
unsigned long address;
unsigned long size;
unsigned long flags; };
ここで address は、そのモジュールが常駐しているカーネル空間上の アドレスであり、size はモジュールの大きさ(単位はバイト)である。 また flags は MOD_RUNNING, MOD_AUTOCLEAN 等のマスク であり、モジュールの現在の状態を示している。ret には module_info 構造体の大きさが返される。
返り値¶
成功した場合は 0 が返される。エラーの場合は -1 が返され、errno に適切な値が設定される。
エラー¶
関連項目¶
26 Dec 1996 | Linux 2.1.17 |