1 .\" Copyright (C) 1996 Free Software Foundation, Inc.
2 .\" This file is distributed accroding to the GNU General Public License.
3 .\" See the file COPYING in the top level source directory for details.
5 .\" Japanese Version Copyright (c) 1997,1999 HANATAKA Shinya and FUJIWARA Teruyoshi
6 .\" all rights reserved.
7 .\" Translated Sat Aug 30 14:17:18 JST 1997
8 .\" by HANATAKA Shinya <hanataka@abyss.rim.or.jp>
9 .\" Merged with another translation Sun Aug 15 10:37:42 JST 1999
10 .\" by FUJIWARA Teruyoshi <fujiwara@linux.or.jp>
12 .\"WORD: loadable module ローダブルモジュール
14 .TH QUERY_MODULE 2 "26 Dec 1996" "Linux 2.1.17" "Linux Module Support"
16 query_module \- モジュールに関連する各種の情報をカーネルに問い合わせる
19 .B #include <linux/module.h>
21 \fBint query_module(const char *\fIname\fB, int \fIwhich\fB,
22 void *\fIbuf\fB, size_t \fIbufsize\fB, size_t *\fIret\fB);
26 は、ローダブルモジュールに関連する情報をカーネルに問い合わせる。情報の
27 フォーマットと正確な意味は、副関数 \fIwhich\fP によって異なる。
28 現在ロードされているモジュールを指すために \fIname\fP を必要とする関数
29 もあるし、カーネル固有であることを示すために \fIname\fP に \fBNULL\fP
35 必ず成功を返す。システムコールを調べるために使われる。
38 ロードされている全てのモジュールの名前を返す。出力バッファのフォーマット
39 は、NULL で終端する文字列を並べたものである。モジュールの数が
43 指定されたモジュールが使っている全てのモジュール名を返す。出力バッファ
44 のフォーマットは、NULL で終端する文字列を並べたものである。モジュール
45 の数が \fIret\fP にセットされる。
48 指定されたモジュールを使っている全てのモジュール名を返す。これは
49 \fBQM_DEPS\fP と逆の機能である。出力バッファのフォーマットは、NULL で
50 終端する文字列を並べたものである。モジュールの数が \fIret\fP にセット
54 カーネルまたは指定されているモジュールがエクスポートしているシンボルと
55 値を返す。バッファのフォーマットは、以下の構造体
66 の配列に NULL で終端する文字列を続けたものである。\fIname\fP の値は
67 \fIbuf\fP の先頭から文字列までのオフセット文字数である。
68 \fIret\fP にはシンボルの数がセットされる。
72 指定されたモジュールに関する様々な情報を返す。出力バッファのフォーマット
79 unsigned long address;
85 ここで \fIaddress\fP は、そのモジュールが常駐しているカーネル空間上の
86 アドレスであり、\fIsize\fP はモジュールの大きさ(単位はバイト)である。
87 また \fIflags\fP は \fBMOD_RUNNING\fP, \fBMOD_AUTOCLEAN\fP 等のマスク
88 であり、モジュールの現在の状態を示している。\fIret\fP には
89 \fBmodule_info\fP 構造体の大きさが返される。
92 成功した場合は 0 が返される。エラーの場合は \-1 が返され、\fIerrno\fP
97 \fIname\fP という名前のモジュールが存在しない。
100 \fIwhich\fP が不正である。あるいは \fIname\fP が不適切なカーネルの副関数
104 用意されたバッファの大きさが小さすぎる。\fIret\fP には必要最小限のバッ
108 \fIname\fP, \fIbuf\fP, \fIret\fP の少なくともいずれかが、プログラムが
109 アクセスできるアドレス空間の外部であった。
111 .BR create_module "(2), " init_module "(2), " delete_module "(2)