# SOME DESCRIPTIVE TITLE
# Copyright (C) YEAR Free Software Foundation, Inc.
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2012-05-01 04:21+0900\n"
"PO-Revision-Date: 2012-05-01 04:47+0900\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

#. type: TH
#: build/C/man2/create_module.2:8
#, no-wrap
msgid "CREATE_MODULE"
msgstr "CREATE_MODULE"

#. type: TH
#: build/C/man2/create_module.2:8 build/C/man2/get_kernel_syms.2:8
#: build/C/man2/query_module.2:8
#, no-wrap
msgid "2007-06-03"
msgstr "2007-06-03"

#. type: TH
#: build/C/man2/create_module.2:8 build/C/man2/delete_module.2:8
#: build/C/man2/get_kernel_syms.2:8 build/C/man2/init_module.2:8
#: build/C/man2/query_module.2:8
#, no-wrap
msgid "Linux"
msgstr "Linux"

#. type: TH
#: build/C/man2/create_module.2:8 build/C/man2/delete_module.2:8
#: build/C/man2/get_kernel_syms.2:8 build/C/man2/init_module.2:8
#: build/C/man2/query_module.2:8
#, no-wrap
msgid "Linux Programmer's Manual"
msgstr "Linux Programmer's Manual"

#. type: SH
#: build/C/man2/create_module.2:9 build/C/man2/delete_module.2:9
#: build/C/man2/get_kernel_syms.2:9 build/C/man2/init_module.2:9
#: build/C/man2/query_module.2:9
#, no-wrap
msgid "NAME"
msgstr "名前"

#. type: Plain text
#: build/C/man2/create_module.2:11
msgid "create_module - create a loadable module entry"
msgstr "create_module - ローダブルモジュールのエントリを作成する"

#. type: SH
#: build/C/man2/create_module.2:11 build/C/man2/delete_module.2:11
#: build/C/man2/get_kernel_syms.2:11 build/C/man2/init_module.2:11
#: build/C/man2/query_module.2:11
#, no-wrap
msgid "SYNOPSIS"
msgstr "書式"

#. type: Plain text
#: build/C/man2/create_module.2:14 build/C/man2/delete_module.2:14
#: build/C/man2/get_kernel_syms.2:14 build/C/man2/init_module.2:14
#: build/C/man2/query_module.2:14
#, no-wrap
msgid "B<#include E<lt>linux/module.hE<gt>>\n"
msgstr "B<#include E<lt>linux/module.hE<gt>>\n"

#. type: Plain text
#: build/C/man2/create_module.2:16
#, no-wrap
msgid "B<caddr_t create_module(const char *>I<name>B<, size_t >I<size>B<);>\n"
msgstr "B<caddr_t create_module(const char *>I<name>B<, size_t >I<size>B<);>\n"

#. type: SH
#: build/C/man2/create_module.2:17 build/C/man2/delete_module.2:17
#: build/C/man2/get_kernel_syms.2:17 build/C/man2/init_module.2:17
#: build/C/man2/query_module.2:18
#, no-wrap
msgid "DESCRIPTION"
msgstr "説明"

#. type: Plain text
#: build/C/man2/create_module.2:22
msgid ""
"B<create_module>()  attempts to create a loadable module entry and reserve "
"the kernel memory that will be needed to hold the module.  This system call "
"requires privilege."
msgstr ""
"B<create_module>()  は、ローダブルモジュールのエントリを作成し、そのモジュー"
"ルの保持に必要な カーネルメモリを予約しようとする。 このシステムコールを使う"
"には特権が必要である。"

#. type: SH
#: build/C/man2/create_module.2:22 build/C/man2/delete_module.2:25
#: build/C/man2/get_kernel_syms.2:43 build/C/man2/init_module.2:62
#: build/C/man2/query_module.2:121
#, no-wrap
msgid "RETURN VALUE"
msgstr "返り値"

#. type: Plain text
#: build/C/man2/create_module.2:27
msgid ""
"On success, returns the kernel address at which the module will reside.  On "
"error -1 is returned and I<errno> is set appropriately."
msgstr ""
"成功すると、モジュールが配置されるカーネル空間のアドレスを返す。 エラーの場"
"合 -1 を返し、 I<errno> を適切に設定する。"

#. type: SH
#: build/C/man2/create_module.2:27 build/C/man2/delete_module.2:30
#: build/C/man2/get_kernel_syms.2:49 build/C/man2/init_module.2:67
#: build/C/man2/query_module.2:126
#, no-wrap
msgid "ERRORS"
msgstr "エラー"

#. type: TP
#: build/C/man2/create_module.2:28
#, no-wrap
msgid "B<EEXIST>"
msgstr "B<EEXIST>"

#. type: Plain text
#: build/C/man2/create_module.2:31
msgid "A module by that name already exists."
msgstr "その名前のモジュールがすでに存在する。"

#. type: TP
#: build/C/man2/create_module.2:31 build/C/man2/delete_module.2:34
#: build/C/man2/init_module.2:71 build/C/man2/query_module.2:127
#, no-wrap
msgid "B<EFAULT>"
msgstr "B<EFAULT>"

#. type: Plain text
#: build/C/man2/create_module.2:35 build/C/man2/delete_module.2:38
msgid "I<name> is outside the program's accessible address space."
msgstr "I<name> がプログラムがアクセスできるアドレス空間の外部にある。"

#. type: TP
#: build/C/man2/create_module.2:35 build/C/man2/delete_module.2:38
#: build/C/man2/init_module.2:77 build/C/man2/query_module.2:135
#, no-wrap
msgid "B<EINVAL>"
msgstr "B<EINVAL>"

#. type: Plain text
#: build/C/man2/create_module.2:38
msgid "The requested size is too small even for the module header information."
msgstr "要求したサイズが小さすぎて、モジュールのヘッダ情報すら格納できない。"

#. type: TP
#: build/C/man2/create_module.2:38
#, no-wrap
msgid "B<ENOMEM>"
msgstr "B<ENOMEM>"

#. type: Plain text
#: build/C/man2/create_module.2:42
msgid ""
"The kernel could not allocate a contiguous block of memory large enough for "
"the module."
msgstr ""
"モジュールを格納するのに必要な大きさの連続したメモリブロックを カーネルが確保"
"できなかった。"

#. type: TP
#: build/C/man2/create_module.2:42 build/C/man2/get_kernel_syms.2:51
#: build/C/man2/query_module.2:155
#, no-wrap
msgid "B<ENOSYS>"
msgstr "B<ENOSYS>"

#. type: Plain text
#: build/C/man2/create_module.2:46
msgid "B<create_module>()  is not supported in this version of the kernel."
msgstr ""
"B<create_module>()  がこのバージョンのカーネルではサポートされていない。"

#. type: TP
#: build/C/man2/create_module.2:46 build/C/man2/delete_module.2:45
#: build/C/man2/init_module.2:90
#, no-wrap
msgid "B<EPERM>"
msgstr "B<EPERM>"

#. type: Plain text
#: build/C/man2/create_module.2:52 build/C/man2/delete_module.2:51
#: build/C/man2/init_module.2:96
msgid ""
"The caller was not privileged (did not have the B<CAP_SYS_MODULE> "
"capability)."
msgstr ""
"呼び出し元が特権 (B<CAP_SYS_MODULE> ケーパビリティ) を持っていなかった。"

#. type: SH
#: build/C/man2/create_module.2:52 build/C/man2/get_kernel_syms.2:55
#, no-wrap
msgid "VERSIONS"
msgstr "バージョン"

#.  Removed in Linux 2.5.48
#. type: Plain text
#: build/C/man2/create_module.2:56 build/C/man2/get_kernel_syms.2:59
msgid ""
"This system call is only present on Linux up until kernel 2.4; it was "
"removed in Linux 2.6."
msgstr ""
"このシステムコールが存在するのはカーネル 2.4 までの Linux だけである。 Linux "
"2.6 では削除された。"

#. type: SH
#: build/C/man2/create_module.2:56 build/C/man2/delete_module.2:51
#: build/C/man2/get_kernel_syms.2:59 build/C/man2/init_module.2:96
#: build/C/man2/query_module.2:159
#, no-wrap
msgid "CONFORMING TO"
msgstr "準拠"

#. type: Plain text
#: build/C/man2/create_module.2:59
msgid "B<create_module>()  is Linux-specific."
msgstr "B<create_module>()  は Linux 固有である。"

#. type: SH
#: build/C/man2/create_module.2:59 build/C/man2/delete_module.2:54
#: build/C/man2/get_kernel_syms.2:75 build/C/man2/init_module.2:99
#: build/C/man2/query_module.2:173
#, no-wrap
msgid "SEE ALSO"
msgstr "関連項目"

#. type: Plain text
#: build/C/man2/create_module.2:63
msgid "B<delete_module>(2), B<init_module>(2), B<query_module>(2)"
msgstr "B<delete_module>(2), B<init_module>(2), B<query_module>(2)"

#. type: SH
#: build/C/man2/create_module.2:63 build/C/man2/delete_module.2:58
#: build/C/man2/get_kernel_syms.2:80 build/C/man2/init_module.2:103
#: build/C/man2/query_module.2:178
#, no-wrap
msgid "COLOPHON"
msgstr "この文書について"

#. type: Plain text
#: build/C/man2/create_module.2:70 build/C/man2/delete_module.2:65
#: build/C/man2/get_kernel_syms.2:87 build/C/man2/init_module.2:110
#: build/C/man2/query_module.2:185
msgid ""
"This page is part of release 3.40 of the Linux I<man-pages> project.  A "
"description of the project, and information about reporting bugs, can be "
"found at http://www.kernel.org/doc/man-pages/."
msgstr ""
"この man ページは Linux I<man-pages> プロジェクトのリリース 3.40 の一部\n"
"である。プロジェクトの説明とバグ報告に関する情報は\n"
"http://www.kernel.org/doc/man-pages/ に書かれている。"

#. type: TH
#: build/C/man2/delete_module.2:8
#, no-wrap
msgid "DELETE_MODULE"
msgstr "DELETE_MODULE"

#. type: TH
#: build/C/man2/delete_module.2:8 build/C/man2/init_module.2:8
#, no-wrap
msgid "2006-02-09"
msgstr "2006-02-09"

#. type: Plain text
#: build/C/man2/delete_module.2:11
msgid "delete_module - delete a loadable module entry"
msgstr "delete_module - ローダブルモジュールのエントリを削除する"

#. type: Plain text
#: build/C/man2/delete_module.2:16
#, no-wrap
msgid "B<int delete_module(const char *>I<name>B<);>\n"
msgstr "B<int delete_module(const char *>I<name>B<);>\n"

#. type: Plain text
#: build/C/man2/delete_module.2:25
msgid ""
"B<delete_module>()  attempts to remove an unused loadable module entry.  If "
"I<name> is NULL, all unused modules marked auto-clean will be removed.  This "
"system call requires privilege."
msgstr ""
"B<delete_module>()  は、未使用のローダブルモジュールのエントリを削除しようと"
"する。 I<name> が NULL の場合、未使用のモジュールのうち「自動削除 (auto-"
"clean)」 マークがついたものを全て削除する。 このシステムコールを使うには特権"
"が必要である。"

#. type: Plain text
#: build/C/man2/delete_module.2:30 build/C/man2/init_module.2:67
#: build/C/man2/query_module.2:126
msgid ""
"On success, zero is returned.  On error, -1 is returned and I<errno> is set "
"appropriately."
msgstr ""
"成功の場合 0 が返される。エラーの場合 -1 が返され、 I<errno> に適切な値が設定"
"される。"

#. type: TP
#: build/C/man2/delete_module.2:31 build/C/man2/init_module.2:68
#, no-wrap
msgid "B<EBUSY>"
msgstr "B<EBUSY>"

#. type: Plain text
#: build/C/man2/delete_module.2:34
msgid "The module is in use."
msgstr "そのモジュールは使用中である。"

#. type: Plain text
#: build/C/man2/delete_module.2:42
msgid "I<name> was an empty string."
msgstr "I<name> が空文字列である。"

#. type: TP
#: build/C/man2/delete_module.2:42 build/C/man2/init_module.2:87
#: build/C/man2/query_module.2:145
#, no-wrap
msgid "B<ENOENT>"
msgstr "B<ENOENT>"

#. type: Plain text
#: build/C/man2/delete_module.2:45 build/C/man2/init_module.2:90
msgid "No module by that name exists."
msgstr "その名前のモジュールが存在しない。"

#. type: Plain text
#: build/C/man2/delete_module.2:54
msgid "B<delete_module>()  is Linux-specific."
msgstr "B<delete_module>()  は Linux 固有である。"

#. type: Plain text
#: build/C/man2/delete_module.2:58
msgid "B<create_module>(2), B<init_module>(2), B<query_module>(2)"
msgstr "B<create_module>(2), B<init_module>(2), B<query_module>(2)"

#. type: TH
#: build/C/man2/get_kernel_syms.2:8
#, no-wrap
msgid "GET_KERNEL_SYMS"
msgstr "GET_KERNEL_SYMS"

#. type: Plain text
#: build/C/man2/get_kernel_syms.2:11
msgid "get_kernel_syms - retrieve exported kernel and module symbols"
msgstr "get_kernel_syms - 公開されているカーネルやモジュールのシンボルの取得"

#. type: Plain text
#: build/C/man2/get_kernel_syms.2:16
#, no-wrap
msgid "B<int get_kernel_syms(struct kernel_sym *>I<table>B<);>\n"
msgstr "B<int get_kernel_syms(struct kernel_sym *>I<table>B<);>\n"

#. type: Plain text
#: build/C/man2/get_kernel_syms.2:24
msgid ""
"If I<table> is NULL, B<get_kernel_syms>()  returns the number of symbols "
"available for query.  Otherwise it fills in a table of structures:"
msgstr ""
"B<get_kernel_syms>()  は、 I<table> が NULL の場合、 問い合わせできるシンボル"
"の数を返す。 NULL 以外の場合、以下の構造体の列 (table) に値を入れて返す。"

#. type: Plain text
#: build/C/man2/get_kernel_syms.2:31
#, no-wrap
msgid ""
"struct kernel_sym {\n"
"    unsigned long value;\n"
"    char          name[60];\n"
"};\n"
msgstr ""
"struct kernel_sym {\n"
"    unsigned long value;\n"
"    char          name[60];\n"
"};\n"

#. type: Plain text
#: build/C/man2/get_kernel_syms.2:39
msgid ""
"The symbols are interspersed with magic symbols of the form B<#>I<module-"
"name> with the kernel having an empty name.  The value associated with a "
"symbol of this form is the address at which the module is loaded."
msgstr ""
"シンボルの中には、 B<#>I<module-name> という形式の、カーネルが空の名前を持っ"
"ているマジックシンボル (magic symbol) が散在している。この形式のシンボルに対"
"応する値は モジュールがロードされたアドレスとなる。"

#. type: Plain text
#: build/C/man2/get_kernel_syms.2:43
msgid ""
"The symbols exported from each module follow their magic module tag and the "
"modules are returned in the reverse of the order in which they were loaded."
msgstr ""
"個々のモジュールから公開 (export) されたシンボルは、マジックモジュールタグ の"
"後ろに置かれる。また、モジュールはロードされた順番とは逆順で返される。"

#. type: Plain text
#: build/C/man2/get_kernel_syms.2:49
msgid ""
"On success, returns the number of symbols copied to I<table>.  On error, -1 "
"is returned and I<errno> is set appropriately."
msgstr ""
"成功すると、 I<table> にコピーされたシンボル数を返す。 エラーの場合、-1 を返"
"し、 I<errno> を適切に設定する。"

#. type: Plain text
#: build/C/man2/get_kernel_syms.2:51
msgid "There is only one possible error return:"
msgstr "返る可能性があるエラーは一つだけである。"

#. type: Plain text
#: build/C/man2/get_kernel_syms.2:55
msgid "B<get_kernel_syms>()  is not supported in this version of the kernel."
msgstr ""
"B<get_kernel_syms>()  がこのバージョンのカーネルではサポートされていない。"

#. type: Plain text
#: build/C/man2/get_kernel_syms.2:62
msgid "B<get_kernel_syms>()  is Linux-specific."
msgstr "B<get_kernel_syms>()  は Linux 固有である。"

#. type: SH
#: build/C/man2/get_kernel_syms.2:62
#, no-wrap
msgid "BUGS"
msgstr "バグ"

#. type: Plain text
#: build/C/man2/get_kernel_syms.2:67
msgid ""
"There is no way to indicate the size of the buffer allocated for I<table>.  "
"If symbols have been added to the kernel since the program queried for the "
"symbol table size, memory will be corrupted."
msgstr ""
"I<table> 用に確保したバッファの大きさを伝える方法がない。 プログラムがシンボ"
"ルテーブルの大きさを問い合わせた後に、カーネルに シンボルが追加されると、メモ"
"リの内容が破壊されることになる。"

#. type: Plain text
#: build/C/man2/get_kernel_syms.2:69
msgid "The length of exported symbol names is limited to 59 characters."
msgstr "公開されるシンボル名の長さが 59 文字に制限されている。"

#. type: Plain text
#: build/C/man2/get_kernel_syms.2:75
msgid ""
"Because of these limitations, this system call is deprecated in favor of "
"B<query_module>(2)  (which is itself nowadays deprecated in favor of other "
"interfaces described on its manual page)."
msgstr ""
"これらの制限があるので、このシステムコールを使うよりは B<query_module>(2)  を"
"使うのが望ましい (現在では B<query_module>(2)  自身もそのマニュアルページに書"
"かれているように 他のインタフェースを使うのが望ましいとされている)。"

#. type: Plain text
#: build/C/man2/get_kernel_syms.2:80
msgid ""
"B<create_module>(2), B<delete_module>(2), B<init_module>(2), B<query_module>"
"(2)"
msgstr ""
"B<create_module>(2), B<delete_module>(2), B<init_module>(2), B<query_module>"
"(2)"

#. type: TH
#: build/C/man2/init_module.2:8
#, no-wrap
msgid "INIT_MODULE"
msgstr "INIT_MODULE"

#. type: Plain text
#: build/C/man2/init_module.2:11
msgid "init_module - initialize a loadable module entry"
msgstr "init_module - ローダブルモジュールのエントリを初期化する"

#. type: Plain text
#: build/C/man2/init_module.2:16
#, no-wrap
msgid "B<int init_module(const char *>I<name>B<, struct module *>I<image>B<);>\n"
msgstr "B<int init_module(const char *>I<name>B<, struct module *>I<image>B<);>\n"

#. type: Plain text
#: build/C/man2/init_module.2:23
msgid ""
"B<init_module>()  loads the relocated module image into kernel space and "
"runs the module's I<init> function."
msgstr ""
"B<init_module>()  は再配置されたモジュールイメージをカーネル空間にロードし、 "
"そのモジュールの I<init> 関数を実行する。"

#. type: Plain text
#: build/C/man2/init_module.2:27
msgid ""
"The module image begins with a module structure and is followed by code and "
"data as appropriate.  The module structure is defined as follows:"
msgstr ""
"モジュールイメージは先頭部分に module 構造体があり、その後ろに 適切なコードと"
"データが続く。 この module 構造体は以下のように定義されている:"

#. type: Plain text
#: build/C/man2/init_module.2:50
#, no-wrap
msgid ""
"struct module {\n"
"    unsigned long         size_of_struct;\n"
"    struct module        *next;\n"
"    const char           *name;\n"
"    unsigned long         size;\n"
"    long                  usecount;\n"
"    unsigned long         flags;\n"
"    unsigned int          nsyms;\n"
"    unsigned int          ndeps;\n"
"    struct module_symbol *syms;\n"
"    struct module_ref    *deps;\n"
"    struct module_ref    *refs;\n"
"    int                 (*init)(void);\n"
"    void                (*cleanup)(void);\n"
"    const struct exception_table_entry *ex_table_start;\n"
"    const struct exception_table_entry *ex_table_end;\n"
"#ifdef __alpha__\n"
"    unsigned long gp;\n"
"#endif\n"
"};\n"
msgstr ""
"struct module {\n"
"    unsigned long         size_of_struct;\n"
"    struct module        *next;\n"
"    const char           *name;\n"
"    unsigned long         size;\n"
"    long                  usecount;\n"
"    unsigned long         flags;\n"
"    unsigned int          nsyms;\n"
"    unsigned int          ndeps;\n"
"    struct module_symbol *syms;\n"
"    struct module_ref    *deps;\n"
"    struct module_ref    *refs;\n"
"    int                 (*init)(void);\n"
"    void                (*cleanup)(void);\n"
"    const struct exception_table_entry *ex_table_start;\n"
"    const struct exception_table_entry *ex_table_end;\n"
"#ifdef __alpha__\n"
"    unsigned long gp;\n"
"#endif\n"
"};\n"

#. type: Plain text
#: build/C/man2/init_module.2:60
msgid ""
"All of the pointer fields, with the exception of I<next> and I<refs>, are "
"expected to point within the module body and be initialized as appropriate "
"for kernel space, that is, relocated with the rest of the module."
msgstr ""
"I<next> と I<refs> 以外の全てのポインタ要素はモジュール本体内部を指し、 カー"
"ネル空間での適切な値で初期化される (つまり、モジュールの残りの 部分で再配置さ"
"れる) ことが期待される。"

#. type: Plain text
#: build/C/man2/init_module.2:62
msgid "This system call requires privilege."
msgstr "このシステムコールを使うには特権が必要である。"

#. type: Plain text
#: build/C/man2/init_module.2:71
msgid "The module's initialization routine failed."
msgstr "モジュールの初期化ルーチンが失敗した。"

#. type: Plain text
#: build/C/man2/init_module.2:77
msgid "I<name> or I<image> is outside the program's accessible address space."
msgstr ""
"I<name> や I<image> がプログラムがアクセスできるアドレス空間の外部にある。"

#. type: Plain text
#: build/C/man2/init_module.2:87
msgid ""
"Some I<image> slot is filled in incorrectly, I<image-E<gt>name> does not "
"correspond to the original module name, some I<image-E<gt>deps> entry does "
"not correspond to a loaded module, or some other similar inconsistency."
msgstr ""
"一部の I<image> スロットにおかしな値が入っている。または I<image-E<gt>name> "
"が元のモジュール名と一致していない。または、一部の I<image-E<gt>deps> エント"
"リがロードされたモジュールに対応していない。 または、他に同様の矛盾が起こって"
"いる。"

#. type: Plain text
#: build/C/man2/init_module.2:99
msgid "B<init_module>()  is Linux-specific."
msgstr "B<init_module>()  は Linux 固有である。"

#. type: Plain text
#: build/C/man2/init_module.2:103
msgid "B<create_module>(2), B<delete_module>(2), B<query_module>(2)"
msgstr "B<create_module>(2), B<delete_module>(2), B<query_module>(2)"

#. type: TH
#: build/C/man2/query_module.2:8
#, no-wrap
msgid "QUERY_MODULE"
msgstr "QUERY_MODULE"

#. type: Plain text
#: build/C/man2/query_module.2:11
msgid "query_module - query the kernel for various bits pertaining to modules"
msgstr "query_module - モジュールに関連する各種の情報をカーネルに問い合わせる"

#. type: Plain text
#: build/C/man2/query_module.2:17
#, no-wrap
msgid ""
"B<int query_module(const char *>I<name>B<, int >I<which>B<, void *>I<buf>B<,>\n"
"B<                 size_t >I<bufsize>B<, size_t *>I<ret>B<);>\n"
msgstr ""
"B<int query_module(const char *>I<name>B<, int >I<which>B<, void *>I<buf>B<,>\n"
"B<                 size_t >I<bufsize>B<, size_t *>I<ret>B<);>\n"

#. type: Plain text
#: build/C/man2/query_module.2:35
msgid ""
"B<query_module>()  requests information from the kernel about loadable "
"modules.  The returned information is placed in the buffer pointed to by "
"I<buf>.  The caller must specify the size of I<buf> in I<bufsize>.  The "
"precise nature and format of the returned information depend on the "
"operation specified by I<which>.  Some operations require I<name> to "
"identify a currently loaded module, some allow I<name> to be NULL, "
"indicating the kernel proper."
msgstr ""
"B<query_module>()  は、ローダブルモジュールに関する情報をカーネルに問い合わせ"
"る。 情報は I<buf> が指し示すバッファに格納されて返される。 呼び出し元は "
"I<buf> のサイズを I<bufsize> に指定しなければならない。 得られる情報の正確な"
"意味とフォーマットは、 I<which> でどの操作を指定するかによって異なる。 現在"
"ロードされているモジュールを特定するために I<name> を必要とする操作があれ"
"ば、 カーネル固有であることを示す NULL を指定できる操作もある。"

#. type: Plain text
#: build/C/man2/query_module.2:38
msgid "The following values can be specified for I<which>:"
msgstr "I<which> には以下の値を指定できる:"

#. type: TP
#: build/C/man2/query_module.2:38
#, no-wrap
msgid "B<0>"
msgstr "B<0>"

#. type: Plain text
#: build/C/man2/query_module.2:43
msgid ""
"Returns success, if the kernel supports B<query_module>().  Used to probe "
"for availability of the system call."
msgstr ""
"カーネルが B<query_module>()  をサポートしている場合、成功を返す。 このシステ"
"ムコールが利用可能かを調べるために使われる。"

#. type: TP
#: build/C/man2/query_module.2:43
#, no-wrap
msgid "B<QM_MODULES>"
msgstr "B<QM_MODULES>"

#.  ret is set on ENOSPC
#. type: Plain text
#: build/C/man2/query_module.2:51
msgid ""
"Returns the names of all loaded modules.  The returned buffer consists of a "
"sequence of null-terminated strings; I<ret> is set to the number of modules."
msgstr ""
"ロードされている全てのモジュールの名前を返す。 バッファには、NULL 終端された"
"文字列が順に入る。 返されるバッファ I<ret> にはモジュールの数が設定される。"

#. type: TP
#: build/C/man2/query_module.2:51
#, no-wrap
msgid "B<QM_DEPS>"
msgstr "B<QM_DEPS>"

#.  ret is set on ENOSPC
#. type: Plain text
#: build/C/man2/query_module.2:58
msgid ""
"Returns the names of all modules used by the indicated module.  The returned "
"buffer consists of a sequence of null-terminated strings; I<ret> is set to "
"the number of modules."
msgstr ""
"指定されたモジュールが使用している全モジュールの名前を返す。 バッファには、"
"NULL 終端された文字列が順に入る。 返されるバッファ I<ret> にはモジュールの数"
"が設定される。"

#. type: TP
#: build/C/man2/query_module.2:58
#, no-wrap
msgid "B<QM_REFS>"
msgstr "B<QM_REFS>"

#.  ret is set on ENOSPC
#. type: Plain text
#: build/C/man2/query_module.2:67
msgid ""
"Returns the names of all modules using the indicated module.  This is the "
"inverse of B<QM_DEPS>.  The returned buffer consists of a sequence of null-"
"terminated strings; I<ret> is set to the number of modules."
msgstr ""
"指定されたモジュールを使用している全モジュールの名前を返す。 これは "
"B<QM_DEPS> と逆の機能である。 バッファには、NULL 終端された文字列が順に入"
"る。 返されるバッファ I<ret> にはモジュールの数が設定される。"

#. type: TP
#: build/C/man2/query_module.2:67
#, no-wrap
msgid "B<QM_SYMBOLS>"
msgstr "B<QM_SYMBOLS>"

#.  ret is set on ENOSPC
#. type: Plain text
#: build/C/man2/query_module.2:73
msgid ""
"Returns the symbols and values exported by the kernel or the indicated "
"module.  The returned buffer is an array of structures of the following form"
msgstr ""
"カーネルまたは指定されたモジュールがエクスポートしているシンボルと 値を返"
"す。 バッファのデータは、 以下の構造体の配列に NULL 終端された文字列が続く形"
"となる。"

#. type: Plain text
#: build/C/man2/query_module.2:80
#, no-wrap
msgid ""
"struct module_symbol {\n"
"    unsigned long value;\n"
"    unsigned long name;\n"
"};\n"
msgstr ""
"struct module_symbol {\n"
"    unsigned long value;\n"
"    unsigned long name;\n"
"};\n"

#. type: Plain text
#: build/C/man2/query_module.2:90
msgid ""
"followed by null-terminated strings.  The value of I<name> is the character "
"offset of the string relative to the start of I<buf>; I<ret> is set to the "
"number of symbols."
msgstr ""
"I<name> の値は、 I<buf> の先頭からの文字列までのオフセット文字数である。 "
"I<ret> にはシンボルの数が設定される。"

#. type: TP
#: build/C/man2/query_module.2:90
#, no-wrap
msgid "B<QM_INFO>"
msgstr "B<QM_INFO>"

#. type: Plain text
#: build/C/man2/query_module.2:94
msgid ""
"Returns miscellaneous information about the indicated module.  The output "
"buffer format is:"
msgstr ""
"指定されたモジュールに関する様々な情報を返す。 出力バッファのフォーマットは以"
"下の形式となる:"

#. type: Plain text
#: build/C/man2/query_module.2:102
#, no-wrap
msgid ""
"struct module_info {\n"
"    unsigned long address;\n"
"    unsigned long size;\n"
"    unsigned long flags;\n"
"};\n"
msgstr ""
"struct module_info {\n"
"    unsigned long address;\n"
"    unsigned long size;\n"
"    unsigned long flags;\n"
"};\n"

#. type: Plain text
#: build/C/man2/query_module.2:121
msgid ""
"where I<address> is the kernel address at which the module resides, I<size> "
"is the size of the module in bytes, and I<flags> is a mask of "
"B<MOD_RUNNING>, B<MOD_AUTOCLEAN>, etc. that indicates the current status of "
"the module (see the kernel source file I<include/linux/module.h>).  I<ret> "
"is set to the size of the I<module_info> structure."
msgstr ""
"I<address> はそのモジュールが配置されているカーネル空間上のアドレス、 "
"I<size> はそのモジュールのバイト単位のサイズ、 I<flags> は B<MOD_RUNNING>, "
"B<MOD_AUTOCLEAN> 等のマスクであり、そのモジュールの現在の状態を示す (カーネル"
"のソースファイル I<include/linux/module.h> を参照)。 I<ret> には "
"I<module_info> 構造体のサイズが設定される。"

#. type: Plain text
#: build/C/man2/query_module.2:135
msgid ""
"At least one of I<name>, I<buf>, or I<ret> was outside the program's "
"accessible address space."
msgstr ""
"I<name>, I<buf>, I<ret> の少なくとも一つが、プログラムがアクセスできる アドレ"
"ス空間の外部であった。"

#.  Not permitted with QM_DEPS, QM_REFS, or QM_INFO.
#. type: Plain text
#: build/C/man2/query_module.2:145
msgid ""
"Invalid I<which>; or I<name> is NULL (indicating \"the kernel\"), but this "
"is not permitted with the specified value of I<which>."
msgstr ""
"I<which> が不正である。あるいは I<name> が NULL だが (NULL は \"カーネル\" を"
"示す)、 I<which> で指定された値との組み合わせは許可されていない。"

#. type: Plain text
#: build/C/man2/query_module.2:150
msgid "No module by that I<name> exists."
msgstr "I<name> という名前のモジュールが存在しない。"

#. type: TP
#: build/C/man2/query_module.2:150
#, no-wrap
msgid "B<ENOSPC>"
msgstr "B<ENOSPC>"

#. type: Plain text
#: build/C/man2/query_module.2:155
msgid ""
"The buffer size provided was too small.  I<ret> is set to the minimum size "
"needed."
msgstr ""
"与えられたバッファの大きさが小さすぎる。 I<ret> には最小限必要なバッファのサ"
"イズが設定される。"

#. type: Plain text
#: build/C/man2/query_module.2:159
msgid "B<query_module>()  is not supported in this version of the kernel."
msgstr ""
"B<query_module>()  はこのバージョンのカーネルではサポートされていない。"

#. type: Plain text
#: build/C/man2/query_module.2:162
msgid "B<query_module>()  is Linux-specific."
msgstr "B<query_module>()  は Linux 固有である。"

#. type: SH
#: build/C/man2/query_module.2:162
#, no-wrap
msgid "NOTES"
msgstr "注意"

#.  Removed in Linux 2.5.48
#. type: Plain text
#: build/C/man2/query_module.2:173
msgid ""
"This system call is only present on Linux up until kernel 2.4; it was "
"removed in Linux 2.6.  Some of the information that was available via "
"B<query_module>()  can be obtained from I</proc/modules>, I</proc/kallsyms>, "
"and I</sys/modules>."
msgstr ""
"このシステムコールが存在するのはカーネル 2.4 までの Linux だけである。 Linux "
"2.6 では削除された。 B<query_module>()  で得られた情報のいくつかは、 I</proc/"
"modules>, I</proc/kallsyms>, I</sys/modules> から取得できる。"

#. type: Plain text
#: build/C/man2/query_module.2:178
msgid ""
"B<create_module>(2), B<delete_module>(2), B<get_kernel_syms>(2), "
"B<init_module>(2)"
msgstr ""
"B<create_module>(2), B<delete_module>(2), B<get_kernel_syms>(2), "
"B<init_module>(2)"
