OSDN Git Service

Update README
[linuxjm/LDP_man-pages.git] / draft / man2 / query_module.2
index 3d11637..c7bd31d 100644 (file)
@@ -1,6 +1,8 @@
 .\" Copyright (C) 1996 Free Software Foundation, Inc.
+.\"
+.\" %%%LICENSE_START(GPL_NOVERSION_ONELINE)
 .\" This file is distributed according to the GNU General Public License.
-.\" See the file COPYING in the top level source directory for details.
+.\" %%%LICENSE_END
 .\"
 .\" 2006-02-09, some reformatting by Luc Van Oostenryck; some
 .\" reformatting and rewordings by mtk
 .\" This file was generated with po4a. Translate the source file.
 .\"
 .\"*******************************************************************
-.TH QUERY_MODULE 2 2007\-06\-03 Linux "Linux Programmer's Manual"
+.\"
+.\" Japanese Version Copyright (c) 2006 Akihiro MOTOKI all rights reserved.
+.\" Translated 2006-07-29, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>
+.\" Updated 2013-05-01, Akihiro MOTOKI <amotoki@gmail.com>
+.\" Updated 2013-05-06, Akihiro MOTOKI <amotoki@gmail.com>
+.\"
+.TH QUERY_MODULE 2 2014\-05\-10 Linux "Linux Programmer's Manual"
 .SH 名前
 query_module \- モジュールに関連する各種の情報をカーネルに問い合わせる
 .SH 書式
@@ -20,9 +28,13 @@ query_module \- モジュールに関連する各種の情報をカーネルに
 \fBint query_module(const char *\fP\fIname\fP\fB, int \fP\fIwhich\fP\fB, void *\fP\fIbuf\fP\fB,\fP
 \fB                 size_t \fP\fIbufsize\fP\fB, size_t *\fP\fIret\fP\fB);\fP
 .fi
+
+\fI注意\fP: この関数の宣言は glibc のヘッダーでは提供されていない。「注意」を参照。
 .SH 説明
-\fBquery_module\fP()  は、ローダブルモジュールに関する情報をカーネルに問い合わせる。 情報は \fIbuf\fP
-が指し示すバッファに格納されて返される。 呼び出し元は \fIbuf\fP のサイズを \fIbufsize\fP に指定しなければならない。
+\fI注意\fP: このシステムコールが存在するのは、カーネル 2.6 より前の Linux だけである。
+
+\fBquery_module\fP()  は、ローダーブルモジュールに関する情報をカーネルに問い合わせる。 情報は \fIbuf\fP
+が指し示すバッファーに格納されて返される。 呼び出し元は \fIbuf\fP のサイズを \fIbufsize\fP に指定しなければならない。
 得られる情報の正確な意味とフォーマットは、 \fIwhich\fP でどの操作を指定するかによって異なる。 現在ロードされているモジュールを特定するために
 \fIname\fP を必要とする操作があれば、 カーネル固有であることを示す NULL を指定できる操作もある。
 
@@ -33,23 +45,23 @@ query_module \- モジュールに関連する各種の情報をカーネルに
 .TP 
 \fBQM_MODULES\fP
 .\" ret is set on ENOSPC
\83­ã\83¼ã\83\89ã\81\95ã\82\8cã\81¦ã\81\84ã\82\8bå\85¨ã\81¦ã\81®ã\83¢ã\82¸ã\83¥ã\83¼ã\83«ã\81®å\90\8då\89\8dã\82\92è¿\94ã\81\99ã\80\82 ã\83\90ã\83\83ã\83\95ã\82¡ã\81«ã\81¯ã\80\81NULL çµ\82端ã\81\95ã\82\8cã\81\9fæ\96\87å­\97å\88\97ã\81\8cé \86ã\81«å\85¥ã\82\8bã\80\82 è¿\94ã\81\95ã\82\8cã\82\8bã\83\90ã\83\83ã\83\95ã\82¡ \fIret\fP
\83­ã\83¼ã\83\89ã\81\95ã\82\8cã\81¦ã\81\84ã\82\8bå\85¨ã\81¦ã\81®ã\83¢ã\82¸ã\83¥ã\83¼ã\83«ã\81®å\90\8då\89\8dã\82\92è¿\94ã\81\99ã\80\82 ã\83\90ã\83\83ã\83\95ã\82¡ã\83¼ã\81«ã\81¯ã\80\81ã\83\8cã\83«çµ\82端ã\81\95ã\82\8cã\81\9fæ\96\87å­\97å\88\97ã\81\8cé \86ã\81«å\85¥ã\82\8bã\80\82 è¿\94ã\81\95ã\82\8cã\82\8bã\83\90ã\83\83ã\83\95ã\82¡ã\83¼ \fIret\fP
 にはモジュールの数が設定される。
 .TP 
 \fBQM_DEPS\fP
 .\" ret is set on ENOSPC
\8c\87å®\9aã\81\95ã\82\8cã\81\9fã\83¢ã\82¸ã\83¥ã\83¼ã\83«ã\81\8c使ç\94¨ã\81\97ã\81¦ã\81\84ã\82\8bå\85¨ã\83¢ã\82¸ã\83¥ã\83¼ã\83«ã\81®å\90\8då\89\8dã\82\92è¿\94ã\81\99ã\80\82 ã\83\90ã\83\83ã\83\95ã\82¡ã\81«ã\81¯ã\80\81NULL çµ\82端ã\81\95ã\82\8cã\81\9fæ\96\87å­\97å\88\97ã\81\8cé \86ã\81«å\85¥ã\82\8bã\80\82 è¿\94ã\81\95ã\82\8cã\82\8bã\83\90ã\83\83ã\83\95ã\82¡ \fIret\fP
\8c\87å®\9aã\81\95ã\82\8cã\81\9fã\83¢ã\82¸ã\83¥ã\83¼ã\83«ã\81\8c使ç\94¨ã\81\97ã\81¦ã\81\84ã\82\8bå\85¨ã\83¢ã\82¸ã\83¥ã\83¼ã\83«ã\81®å\90\8då\89\8dã\82\92è¿\94ã\81\99ã\80\82 ã\83\90ã\83\83ã\83\95ã\82¡ã\83¼ã\81«ã\81¯ã\80\81ã\83\8cã\83«çµ\82端ã\81\95ã\82\8cã\81\9fæ\96\87å­\97å\88\97ã\81\8cé \86ã\81«å\85¥ã\82\8bã\80\82 è¿\94ã\81\95ã\82\8cã\82\8bã\83\90ã\83\83ã\83\95ã\82¡ã\83¼ \fIret\fP
 にはモジュールの数が設定される。
 .TP 
 \fBQM_REFS\fP
 .\" ret is set on ENOSPC
-指定されたモジュールを使用している全モジュールの名前を返す。 これは \fBQM_DEPS\fP と逆の機能である。 バッファには、NULL
-終端された文字列が順に入る。 返されるバッファ \fIret\fP にはモジュールの数が設定される。
+指定されたモジュールを使用している全モジュールの名前を返す。 これは \fBQM_DEPS\fP と逆の機能である。
+バッファーには、ヌル終端された文字列が順に入る。 返されるバッファー \fIret\fP にはモジュールの数が設定される。
 .TP 
 \fBQM_SYMBOLS\fP
 .\" ret is set on ENOSPC
\82«ã\83¼ã\83\8dã\83«ã\81¾ã\81\9fã\81¯æ\8c\87å®\9aã\81\95ã\82\8cã\81\9fã\83¢ã\82¸ã\83¥ã\83¼ã\83«ã\81\8cã\82¨ã\82¯ã\82¹ã\83\9dã\83¼ã\83\88ã\81\97ã\81¦ã\81\84ã\82\8bã\82·ã\83³ã\83\9cã\83«ã\81¨ å\80¤ã\82\92è¿\94ã\81\99ã\80\82 ã\83\90ã\83\83ã\83\95ã\82¡ã\81®ã\83\87ã\83¼ã\82¿ã\81¯ã\80\81 ä»¥ä¸\8bã\81®æ§\8bé\80 ä½\93ã\81®é\85\8då\88\97ã\81« NULL
-終端された文字列が続く形となる。
\82«ã\83¼ã\83\8dã\83«ã\81¾ã\81\9fã\81¯æ\8c\87å®\9aã\81\95ã\82\8cã\81\9fã\83¢ã\82¸ã\83¥ã\83¼ã\83«ã\81\8cã\82¨ã\82¯ã\82¹ã\83\9dã\83¼ã\83\88ã\81\97ã\81¦ã\81\84ã\82\8bã\82·ã\83³ã\83\9cã\83«ã\81¨ å\80¤ã\82\92è¿\94ã\81\99ã\80\82 ã\83\90ã\83\83ã\83\95ã\82¡ã\83¼ã\81®ã\83\87ã\83¼ã\82¿ã\81¯ã\80\81
+以下の構造体の配列にヌル終端された文字列が続く形となる。
 .in +4n
 .nf
 
@@ -63,7 +75,7 @@ struct module_symbol {
 \fIname\fP の値は、 \fIbuf\fP の先頭からの文字列までのオフセット文字数である。 \fIret\fP にはシンボルの数が設定される。
 .TP 
 \fBQM_INFO\fP
-指定されたモジュールに関する様々な情報を返す。 出力バッファのフォーマットは以下の形式となる:
\8c\87å®\9aã\81\95ã\82\8cã\81\9fã\83¢ã\82¸ã\83¥ã\83¼ã\83«ã\81«é\96¢ã\81\99ã\82\8bæ§\98ã\80\85ã\81ªæ\83\85å ±ã\82\92è¿\94ã\81\99ã\80\82 å\87ºå\8a\9bã\83\90ã\83\83ã\83\95ã\82¡ã\83¼ã\81®ã\83\95ã\82©ã\83¼ã\83\9eã\83\83ã\83\88ã\81¯ä»¥ä¸\8bã\81®å½¢å¼\8fã\81¨ã\81ªã\82\8b:
 .in +4n
 .nf
 
@@ -76,8 +88,8 @@ struct module_info {
 .in
 .IP
 \fIaddress\fP はそのモジュールが配置されているカーネル空間上のアドレス、 \fIsize\fP はそのモジュールのバイト単位のサイズ、
-\fIflags\fP は \fBMOD_RUNNING\fP, \fBMOD_AUTOCLEAN\fP 等のマスクであり、そのモジュールの現在の状態を示す
-(カーネルのソースファイル \fIinclude/linux/module.h\fP を参照)。 \fIret\fP には \fImodule_info\fP
+\fIflags\fP は \fBMOD_RUNNING\fP, \fBMOD_AUTOCLEAN\fP 等のマスクであり、そのモジュールの現在の状態を示す (Linux
+カーネルのソースファイル \fIinclude/linux/module.h\fP を参照)。 \fIret\fP には \fImodule_info\fP
 構造体のサイズが設定される。
 .SH 返り値
 成功の場合 0 が返される。エラーの場合 \-1 が返され、 \fIerrno\fP に適切な値が設定される。
@@ -95,17 +107,27 @@ struct module_info {
 \fIname\fP という名前のモジュールが存在しない。
 .TP 
 \fBENOSPC\fP
-ä¸\8eã\81\88ã\82\89ã\82\8cã\81\9fã\83\90ã\83\83ã\83\95ã\82¡ã\81®å¤§ã\81\8dã\81\95ã\81\8cå°\8fã\81\95ã\81\99ã\81\8eã\82\8bã\80\82 \fIret\fP ã\81«ã\81¯æ\9c\80å°\8fé\99\90å¿\85è¦\81ã\81ªã\83\90ã\83\83ã\83\95ã\82¡のサイズが設定される。
+ä¸\8eã\81\88ã\82\89ã\82\8cã\81\9fã\83\90ã\83\83ã\83\95ã\82¡ã\83¼ã\81®å¤§ã\81\8dã\81\95ã\81\8cå°\8fã\81\95ã\81\99ã\81\8eã\82\8bã\80\82 \fIret\fP ã\81«ã\81¯æ\9c\80å°\8fé\99\90å¿\85è¦\81ã\81ªã\83\90ã\83\83ã\83\95ã\82¡ã\83¼のサイズが設定される。
 .TP 
 \fBENOSYS\fP
-\fBquery_module\fP()  はこのバージョンのカーネルではサポートされていない。
+\fBquery_module\fP() はこのバージョンのカーネルではサポートされていない (例えば、カーネルのバージョンが 2.6 以降)。
+.SH バージョン
+.\" Removed in Linux 2.5.48
+このシステムコールが存在するのはカーネル 2.4 までの Linux だけである。 Linux 2.6 では削除された。
 .SH 準拠
 \fBquery_module\fP()  は Linux 固有である。
 .SH 注意
-.\" Removed in Linux 2.5.48
-このシステムコールが存在するのはカーネル 2.4 までの Linux だけである。 Linux 2.6 では削除された。
-\fBquery_module\fP()  で得られた情報のいくつかは、 \fI/proc/modules\fP, \fI/proc/kallsyms\fP,
-\fI/sys/modules\fP から取得できる。
+以前 \fBquery_module\fP() で得られた情報のいくつかは、 \fI/proc/modules\fP, \fI/proc/kallsyms\fP および
+\fI/sys/module\fP ディレクトリ内のファイルから取得できる。
+
+\fBquery_module\fP() システムコールは glibc ではサポートされていない。 glibc ヘッダーでは宣言は提供されていないが、
+歴史の紆余曲折を経て glibc はこのシステムコールに対する ABI を公開していない。
+したがって、このシステムコールを利用するには、自分のコードの中で手動でインターフェースを宣言すればよい。 \fBsyscall\fP(2)
+を使ってシステムコールを起動できる。
 .SH 関連項目
 \fBcreate_module\fP(2), \fBdelete_module\fP(2), \fBget_kernel_syms\fP(2),
-\fBinit_module\fP(2)
+\fBinit_module\fP(2), \fBlsmod\fP(8), \fBmodinfo\fP(8)
+.SH この文書について
+この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.79 の一部
+である。プロジェクトの説明とバグ報告に関する情報は
+http://www.kernel.org/doc/man\-pages/ に書かれている。