# SOME DESCRIPTIVE TITLE # Copyright (C) YEAR Free Software Foundation, Inc. # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR , YEAR. # msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "POT-Creation-Date: 2014-04-13 10:26+0900\n" "PO-Revision-Date: 2014-04-14 01:18+0900\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \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:10 #, no-wrap msgid "CREATE_MODULE" msgstr "CREATE_MODULE" #. type: TH #: build/C/man2/create_module.2:10 build/C/man2/get_kernel_syms.2:10 #, no-wrap msgid "2012-10-18" msgstr "2012-10-18" #. type: TH #: build/C/man2/create_module.2:10 build/C/man2/delete_module.2:25 #: build/C/man2/get_kernel_syms.2:10 build/C/man2/init_module.2:27 #: build/C/man2/query_module.2:10 #, no-wrap msgid "Linux" msgstr "Linux" #. type: TH #: build/C/man2/create_module.2:10 build/C/man2/delete_module.2:25 #: build/C/man2/get_kernel_syms.2:10 build/C/man2/init_module.2:27 #: build/C/man2/query_module.2:10 #, no-wrap msgid "Linux Programmer's Manual" msgstr "Linux Programmer's Manual" #. type: SH #: build/C/man2/create_module.2:11 build/C/man2/delete_module.2:26 #: build/C/man2/get_kernel_syms.2:11 build/C/man2/init_module.2:28 #: build/C/man2/query_module.2:11 #, no-wrap msgid "NAME" msgstr "名前" #. type: Plain text #: build/C/man2/create_module.2:13 msgid "create_module - create a loadable module entry" msgstr "create_module - ローダブルモジュールのエントリを作成する" #. type: SH #: build/C/man2/create_module.2:13 build/C/man2/delete_module.2:28 #: build/C/man2/get_kernel_syms.2:13 build/C/man2/init_module.2:30 #: build/C/man2/query_module.2:13 #, no-wrap msgid "SYNOPSIS" msgstr "書式" #. type: Plain text #: build/C/man2/create_module.2:16 build/C/man2/get_kernel_syms.2:16 #: build/C/man2/query_module.2:16 #, no-wrap msgid "B<#include Elinux/module.hE>\n" msgstr "B<#include Elinux/module.hE>\n" #. type: Plain text #: build/C/man2/create_module.2:18 #, no-wrap msgid "BIB<, size_t >IB<);>\n" msgstr "BIB<, size_t >IB<);>\n" #. type: SH #: build/C/man2/create_module.2:19 build/C/man2/delete_module.2:35 #: build/C/man2/get_kernel_syms.2:19 build/C/man2/init_module.2:41 #: build/C/man2/query_module.2:23 #, no-wrap msgid "DESCRIPTION" msgstr "説明" #. type: Plain text #: build/C/man2/create_module.2:22 build/C/man2/get_kernel_syms.2:22 #: build/C/man2/query_module.2:26 msgid "B: This system call is present only in kernels before Linux 2.6." msgstr "" "B<注意>: このシステムコールが存在するのは、カーネル 2.6 より前の Linux だけで" "ある。" #. type: Plain text #: build/C/man2/create_module.2:27 msgid "" "B() 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() は、ローダブルモジュールのエントリを作成し、そのモジュー" "ルの保持に必要な カーネルメモリを予約しようとする。 このシステムコールを使う" "には特権が必要である。" #. type: SH #: build/C/man2/create_module.2:27 build/C/man2/delete_module.2:124 #: build/C/man2/get_kernel_syms.2:48 build/C/man2/init_module.2:150 #: build/C/man2/query_module.2:129 #, no-wrap msgid "RETURN VALUE" msgstr "返り値" #. type: Plain text #: build/C/man2/create_module.2:32 msgid "" "On success, returns the kernel address at which the module will reside. On " "error, -1 is returned and I is set appropriately." msgstr "" "成功すると、モジュールが配置されるカーネル空間のアドレスを返す。 エラーの場" "合 -1 を返し、 I を適切に設定する。" #. type: SH #: build/C/man2/create_module.2:32 build/C/man2/delete_module.2:129 #: build/C/man2/get_kernel_syms.2:54 build/C/man2/init_module.2:155 #: build/C/man2/query_module.2:134 #, no-wrap msgid "ERRORS" msgstr "エラー" #. type: TP #: build/C/man2/create_module.2:33 build/C/man2/init_module.2:194 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man2/create_module.2:36 msgid "A module by that name already exists." msgstr "その名前のモジュールがすでに存在する。" #. type: TP #: build/C/man2/create_module.2:36 build/C/man2/delete_module.2:143 #: build/C/man2/init_module.2:162 build/C/man2/query_module.2:135 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man2/create_module.2:40 msgid "I is outside the program's accessible address space." msgstr "I がプログラムがアクセスできるアドレス空間の外部にある。" #. type: TP #: build/C/man2/create_module.2:40 build/C/man2/init_module.2:197 #: build/C/man2/init_module.2:232 build/C/man2/query_module.2:143 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man2/create_module.2:43 msgid "The requested size is too small even for the module header information." msgstr "要求したサイズが小さすぎて、モジュールのヘッダ情報すら格納できない。" #. type: TP #: build/C/man2/create_module.2:43 build/C/man2/init_module.2:177 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man2/create_module.2:47 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:47 build/C/man2/get_kernel_syms.2:56 #: build/C/man2/query_module.2:163 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man2/create_module.2:52 msgid "" "B() is not supported in this version of the kernel (e.g., " "the kernel is version 2.6 or later)." msgstr "" "B() がこのバージョンのカーネルではサポートされていない (例え" "ば、カーネルのバージョンが 2.6 以降)。" #. type: TP #: build/C/man2/create_module.2:52 build/C/man2/delete_module.2:150 #: build/C/man2/init_module.2:180 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man2/create_module.2:58 msgid "" "The caller was not privileged (did not have the B " "capability)." msgstr "" "呼び出し元が特権 (B ケーパビリティ) を持っていなかった。" #. type: SH #: build/C/man2/create_module.2:58 build/C/man2/get_kernel_syms.2:60 #: build/C/man2/init_module.2:252 build/C/man2/query_module.2:168 #, no-wrap msgid "VERSIONS" msgstr "バージョン" #. Removed in Linux 2.5.48 #. type: Plain text #: build/C/man2/create_module.2:62 build/C/man2/get_kernel_syms.2:64 #: build/C/man2/query_module.2:172 msgid "" "This system call is present on Linux only 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:62 build/C/man2/delete_module.2:172 #: build/C/man2/get_kernel_syms.2:64 build/C/man2/init_module.2:255 #: build/C/man2/query_module.2:172 #, no-wrap msgid "CONFORMING TO" msgstr "準拠" #. type: Plain text #: build/C/man2/create_module.2:65 msgid "B() is Linux-specific." msgstr "B() は Linux 固有である。" #. type: SH #: build/C/man2/create_module.2:65 build/C/man2/delete_module.2:202 #: build/C/man2/get_kernel_syms.2:80 build/C/man2/init_module.2:337 #: build/C/man2/query_module.2:187 #, no-wrap msgid "SEE ALSO" msgstr "関連項目" #. type: Plain text #: build/C/man2/create_module.2:69 msgid "B(2), B(2), B(2)" msgstr "B(2), B(2), B(2)" #. type: SH #: build/C/man2/create_module.2:69 build/C/man2/delete_module.2:209 #: build/C/man2/get_kernel_syms.2:85 build/C/man2/init_module.2:343 #: build/C/man2/query_module.2:194 #, no-wrap msgid "COLOPHON" msgstr "この文書について" #. type: Plain text #: build/C/man2/create_module.2:76 build/C/man2/delete_module.2:216 #: build/C/man2/get_kernel_syms.2:92 build/C/man2/init_module.2:350 #: build/C/man2/query_module.2:201 msgid "" "This page is part of release 3.63 of the Linux I 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 プロジェクトのリリース 3.63 の一部\n" "である。プロジェクトの説明とバグ報告に関する情報は\n" "http://www.kernel.org/doc/man-pages/ に書かれている。" #. type: TH #: build/C/man2/delete_module.2:25 #, no-wrap msgid "DELETE_MODULE" msgstr "DELETE_MODULE" #. type: TH #: build/C/man2/delete_module.2:25 #, no-wrap msgid "2012-11-08" msgstr "2012-11-08" #. type: Plain text #: build/C/man2/delete_module.2:28 msgid "delete_module - unload a kernel module" msgstr "delete_module - カーネルモジュールをアンロードする" #. type: Plain text #: build/C/man2/delete_module.2:31 #, no-wrap msgid "BIB<, int >IB<);>\n" msgstr "BIB<, int >IB<);>\n" #. type: Plain text #: build/C/man2/delete_module.2:35 build/C/man2/query_module.2:23 msgid "I: There is no glibc wrapper for this system call; see NOTES." msgstr "" "I<注>: このシステムコールには glibc のラッパー関数は存在しない。「注意」の節" "を参照。" #. type: Plain text #: build/C/man2/delete_module.2:49 msgid "" "The B() system call attempts to remove the unused loadable " "module entry identified by I. If the module has an I function, " "then that function is executed before unloading the module. The I " "argument is used to modify the behavior of the system call, as described " "below. This system call requires privilege." msgstr "" #. type: Plain text #: build/C/man2/delete_module.2:51 msgid "Module removal is attempted according to the following rules:" msgstr "" #. type: IP #: build/C/man2/delete_module.2:51 #, no-wrap msgid "1." msgstr "1." #. type: Plain text #: build/C/man2/delete_module.2:55 msgid "" "If there are other loaded modules that depend on (i.e., refer to symbols " "defined in) this module, then the call fails." msgstr "" #. type: IP #: build/C/man2/delete_module.2:55 #, no-wrap msgid "2." msgstr "2." #. type: Plain text #: build/C/man2/delete_module.2:59 msgid "" "Otherwise, if the reference count for the module (i.e., the number of " "processes currently using the module) is zero, then the module is " "immediately unloaded." msgstr "" #. type: IP #: build/C/man2/delete_module.2:59 #, no-wrap msgid "3." msgstr "3." #. O_TRUNC == KMOD_REMOVE_FORCE in kmod library #. O_NONBLOCK == KMOD_REMOVE_NOWAIT in kmod library #. type: Plain text #: build/C/man2/delete_module.2:70 msgid "" "If a module has a nonzero reference count, then the behavior depends on the " "bits set in I. In normal usage (see NOTES), the B flag " "is always specified, and the B flag may additionally be specified." msgstr "" #. type: Plain text #: build/C/man2/delete_module.2:74 msgid "The various combinations for I have the following effect:" msgstr "" #. type: TP #: build/C/man2/delete_module.2:75 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man2/delete_module.2:78 msgid "The call returns immediately, with an error." msgstr "" #. type: TP #: build/C/man2/delete_module.2:78 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man2/delete_module.2:82 msgid "" "The module is unloaded immediately, regardless of whether it has a nonzero " "reference count." msgstr "" #. type: TP #: build/C/man2/delete_module.2:82 #, no-wrap msgid "B<(flags & O_NONBLOCK) == 0>" msgstr "B<(flags & O_NONBLOCK) == 0>" #. type: Plain text #: build/C/man2/delete_module.2:89 msgid "If I does not specify B, the following steps occur:" msgstr "" #. type: IP #: build/C/man2/delete_module.2:90 build/C/man2/delete_module.2:92 #: build/C/man2/delete_module.2:97 #, no-wrap msgid "*" msgstr "*" #. type: Plain text #: build/C/man2/delete_module.2:92 msgid "The module is marked so that no new references are permitted." msgstr "" #. type: Plain text #: build/C/man2/delete_module.2:97 msgid "" "If the module's reference count is nonzero, the caller is placed in an " "uninterruptible sleep state (B) until the reference " "count is zero, at which point the call unblocks." msgstr "" #. type: Plain text #: build/C/man2/delete_module.2:99 msgid "The module is unloaded in the usual way." msgstr "" #. type: Plain text #: build/C/man2/delete_module.2:113 msgid "" "The B flag has one further effect on the rules described above. By " "default, if a module has an I function but no I function, then " "an attempt to remove the module will fail. However, if B was " "specified, this requirement is bypassed." msgstr "" #. type: Plain text #: build/C/man2/delete_module.2:124 msgid "" "Using the B flag is dangerous! If the kernel was not built with " "B, this flag is silently ignored. (Normally, " "B is enabled.) Using this flag taints the " "kernel (TAINT_FORCED_RMMOD)." msgstr "" #. type: Plain text #: build/C/man2/delete_module.2:129 build/C/man2/query_module.2:134 msgid "" "On success, zero is returned. On error, -1 is returned and I is set " "appropriately." msgstr "" "成功の場合 0 が返される。エラーの場合 -1 が返され、 I に適切な値が設定" "される。" #. type: TP #: build/C/man2/delete_module.2:130 build/C/man2/init_module.2:159 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man2/delete_module.2:143 msgid "" "The module is not \"live\" (i.e., it is still being initialized or is " "already marked for removal); or, the module has an I function but has " "no I function, and B was not specified in I." msgstr "" #. type: Plain text #: build/C/man2/delete_module.2:147 msgid "" "I refers to a location outside the process's accessible address space." msgstr "I がプロセスがアクセスできるアドレス空間外の場所を参照している。" #. type: TP #: build/C/man2/delete_module.2:147 build/C/man2/query_module.2:153 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man2/delete_module.2:150 msgid "No module by that name exists." msgstr "その名前のモジュールが存在しない。" #. type: Plain text #: build/C/man2/delete_module.2:161 msgid "" "The caller was not privileged (did not have the B " "capability), or module unloading is disabled (see I in B(5))." msgstr "" "呼び出し元が特権 (B ケーパビリティ) を持っていなかった。もし" "くはモジュールのアンロードが無効になっている (B(5) の I を参照)。" #. type: TP #: build/C/man2/delete_module.2:161 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man2/delete_module.2:172 msgid "" "Other modules depend on this module; or, B was specified in " "I, but the reference count of this module is nonzero and B " "was not specified in I." msgstr "" #. type: Plain text #: build/C/man2/delete_module.2:175 msgid "B() is Linux-specific." msgstr "B() は Linux 固有である。" #. type: SH #: build/C/man2/delete_module.2:175 build/C/man2/init_module.2:260 #: build/C/man2/query_module.2:175 #, no-wrap msgid "NOTES" msgstr "注意" #. type: Plain text #: build/C/man2/delete_module.2:178 msgid "" "Glibc does not provide a wrapper for this system call; call it using " "B(2)." msgstr "" #. type: Plain text #: build/C/man2/delete_module.2:188 msgid "" "The uninterruptible sleep that may occur if B is omitted from " "I is considered undesirable, because the sleeping process is left in " "an unkillable state. As at Linux 3.7, specifying B is optional, " "but in future kernels it is likely to become mandatory." msgstr "" #. type: SS #: build/C/man2/delete_module.2:188 build/C/man2/init_module.2:272 #, no-wrap msgid "Linux 2.4 and earlier" msgstr "" #. type: Plain text #: build/C/man2/delete_module.2:190 msgid "In Linux 2.4 and earlier, the system call took only one argument:" msgstr "" #. type: Plain text #: build/C/man2/delete_module.2:192 msgid "B< int delete_module(const char *>IB<);>" msgstr "B< int delete_module(const char *>IB<);>" #. type: Plain text #: build/C/man2/delete_module.2:196 msgid "If I is NULL, all unused modules marked auto-clean are removed." msgstr "" #. type: Plain text #: build/C/man2/delete_module.2:202 msgid "" "Some further details of differences in the behavior of B() " "in Linux 2.4 and earlier are I currently explained in this manual page." msgstr "" #. type: Plain text #: build/C/man2/delete_module.2:209 msgid "" "B(2), B(2), B(2), B(8), " "B(8), B(8)" msgstr "" "B(2), B(2), B(2), B(8), " "B(8), B(8)" #. type: TH #: build/C/man2/get_kernel_syms.2:10 #, no-wrap msgid "GET_KERNEL_SYMS" msgstr "GET_KERNEL_SYMS" #. type: Plain text #: build/C/man2/get_kernel_syms.2:13 msgid "get_kernel_syms - retrieve exported kernel and module symbols" msgstr "get_kernel_syms - 公開されているカーネルやモジュールのシンボルの取得" #. type: Plain text #: build/C/man2/get_kernel_syms.2:18 #, no-wrap msgid "BIB<);>\n" msgstr "BI
B<);>\n" #. type: Plain text #: build/C/man2/get_kernel_syms.2:29 msgid "" "If I
is NULL, B() returns the number of symbols " "available for query. Otherwise it fills in a table of structures:" msgstr "" "B() は、 I
が NULL の場合、 問い合わせできるシンボル" "の数を返す。 NULL 以外の場合、以下の構造体の列 (table) に値を入れて返す。" #. type: Plain text #: build/C/man2/get_kernel_syms.2:36 #, 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:44 msgid "" "The symbols are interspersed with magic symbols of the form B<#>I 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 という形式の、カーネルが空の名前を持っ" "ているマジックシンボル (magic symbol) が散在している。この形式のシンボルに対" "応する値は モジュールがロードされたアドレスとなる。" #. type: Plain text #: build/C/man2/get_kernel_syms.2:48 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:54 msgid "" "On success, returns the number of symbols copied to I
. On error, -1 " "is returned and I is set appropriately." msgstr "" "成功すると、 I
にコピーされたシンボル数を返す。 エラーの場合、-1 を返" "し、 I を適切に設定する。" #. type: Plain text #: build/C/man2/get_kernel_syms.2:56 msgid "There is only one possible error return:" msgstr "返る可能性があるエラーは一つだけである。" #. type: Plain text #: build/C/man2/get_kernel_syms.2:60 msgid "B() is not supported in this version of the kernel." msgstr "" "B() がこのバージョンのカーネルではサポートされていない。" #. type: Plain text #: build/C/man2/get_kernel_syms.2:67 msgid "B() is Linux-specific." msgstr "B() は Linux 固有である。" #. type: SH #: build/C/man2/get_kernel_syms.2:67 #, no-wrap msgid "BUGS" msgstr "バグ" #. type: Plain text #: build/C/man2/get_kernel_syms.2:72 msgid "" "There is no way to indicate the size of the buffer allocated for I
. " "If symbols have been added to the kernel since the program queried for the " "symbol table size, memory will be corrupted." msgstr "" "I
用に確保したバッファの大きさを伝える方法がない。 プログラムがシンボ" "ルテーブルの大きさを問い合わせた後に、カーネルに シンボルが追加されると、メモ" "リの内容が破壊されることになる。" #. type: Plain text #: build/C/man2/get_kernel_syms.2:74 msgid "The length of exported symbol names is limited to 59 characters." msgstr "公開されるシンボル名の長さが 59 文字に制限されている。" #. type: Plain text #: build/C/man2/get_kernel_syms.2:80 msgid "" "Because of these limitations, this system call is deprecated in favor of " "B(2) (which is itself nowadays deprecated in favor of other " "interfaces described on its manual page)." msgstr "" "これらの制限があるので、このシステムコールを使うよりは B(2) を" "使うのが望ましい (現在では B(2) 自身もそのマニュアルページに書" "かれているように 他のインタフェースを使うのが望ましいとされている)。" #. type: Plain text #: build/C/man2/get_kernel_syms.2:85 msgid "" "B(2), B(2), B(2), B" "(2)" msgstr "" "B(2), B(2), B(2), B" "(2)" #. type: TH #: build/C/man2/init_module.2:27 #, no-wrap msgid "INIT_MODULE" msgstr "INIT_MODULE" #. type: TH #: build/C/man2/init_module.2:27 #, no-wrap msgid "2013-01-07" msgstr "" #. type: Plain text #: build/C/man2/init_module.2:30 msgid "init_module, finit_module - load a kernel module" msgstr "init_module, finit_module - カーネルモジュールをロードする" #. type: Plain text #: build/C/man2/init_module.2:34 #, no-wrap msgid "" "BIB<, unsigned long >IB<,>\n" "B< const char *>IB<);>\n" msgstr "" "BIB<, unsigned long >IB<,>\n" "B< const char *>IB<);>\n" #. type: Plain text #: build/C/man2/init_module.2:37 #, no-wrap msgid "" "BIB<, const char *>IB<,>\n" "B< int >IB<);>\n" msgstr "" "BIB<, const char *>IB<,>\n" "B< int >IB<);>\n" #. type: Plain text #: build/C/man2/init_module.2:41 msgid "I: There are no glibc wrappers for these system calls; see NOTES." msgstr "" #. type: Plain text #: build/C/man2/init_module.2:50 msgid "" "B() loads an ELF image into kernel space, performs any " "necessary symbol relocations, initializes module parameters to values " "provided by the caller, and then runs the module's I function. This " "system call requires privilege." msgstr "" #. type: Plain text #: build/C/man2/init_module.2:58 msgid "" "The I argument points to a buffer containing the binary image " "to be loaded; I specifies the size of that buffer. The module image " "should be a valid ELF image, built for the running kernel." msgstr "" #. type: Plain text #: build/C/man2/init_module.2:69 msgid "" "The I argument is a string containing space-delimited " "specifications of the values for module parameters (defined inside the " "module using B() and B()). The kernel " "parses this string and initializes the specified parameters. Each of the " "parameter specifications has the form:" msgstr "" #. type: Plain text #: build/C/man2/init_module.2:74 msgid "I[B<=>I[B<,>I...]]" msgstr "" #. type: Plain text #: build/C/man2/init_module.2:89 msgid "" "The parameter I is one of those defined within the module using " "I() (see the Linux kernel source file I). The parameter I is optional in the case of I " "and I parameters. Values for array parameters are specified as a " "comma-separated list." msgstr "" #. type: SS #: build/C/man2/init_module.2:89 #, no-wrap msgid "finit_module()" msgstr "" #. commit 34e1169d996ab148490c01b65b4ee371cf8ffba2 #. https://lwn.net/Articles/519010/ #. type: Plain text #: build/C/man2/init_module.2:107 msgid "" "The B() system call is like B(), but reads the " "module to be loaded from the file descriptor I. It is useful when the " "authenticity of a kernel module can be determined from its location in the " "filesystem; in cases where that is possible, the overhead of using " "cryptographically signed modules to determine the authenticity of a module " "can be avoided. The I argument is as for B()." msgstr "" #. commit 2f3238aebedb243804f58d62d57244edec4149b2 #. type: Plain text #: build/C/man2/init_module.2:115 msgid "" "The I argument modifies the operation of B(). It is a " "bit mask value created by ORing together zero or more of the following flags:" msgstr "" #. type: TP #: build/C/man2/init_module.2:115 #, no-wrap msgid "B" msgstr "" #. type: Plain text #: build/C/man2/init_module.2:118 msgid "Ignore symbol version hashes." msgstr "" #. type: TP #: build/C/man2/init_module.2:118 #, no-wrap msgid "B" msgstr "" #. type: Plain text #: build/C/man2/init_module.2:121 msgid "Ignore kernel version magic." msgstr "" #. http://www.tldp.org/HOWTO/Module-HOWTO/basekerncompat.html #. is dated, but informative #. type: Plain text #: build/C/man2/init_module.2:139 msgid "" "There are some safety checks built into a module to ensure that it matches " "the kernel against which it is loaded. These checks are recorded when the " "module is built and verified when the module is loaded. First, the module " "records a \"vermagic\" string containing the kernel version number and " "prominent features (such as the CPU type). Second, if the module was built " "with the B configuration option enabled, a version hash " "is recorded for each symbol the module uses. This hash is based on the " "types of the arguments and return value for the function named by the " "symbol. In this case, the kernel version number within the \"vermagic\" " "string is ignored, as the symbol version hashes are assumed to be " "sufficiently reliable." msgstr "" #. type: Plain text #: build/C/man2/init_module.2:150 msgid "" "Using the B flag indicates that the \"vermagic" "\" string is to be ignored, and the B flag " "indicates that the symbol version hashes are to be ignored. If the kernel " "is built to permit forced loading (i.e., configured with " "B), then loading will continue, otherwise it will " "fail with B as expected for malformed modules." msgstr "" #. type: Plain text #: build/C/man2/init_module.2:155 msgid "" "On success, these system calls return 0. On error, -1 is returned and " "I is set appropriately." msgstr "" "成功の場合、これらのシステムコールは 0 を返す。エラーの場合 -1 が返され、 " "I に適切な値が設定される。" #. type: TP #: build/C/man2/init_module.2:156 #, no-wrap msgid "B (since Linux 3.7)" msgstr "B (Linux 3.7 以降)" #. type: Plain text #: build/C/man2/init_module.2:159 msgid "Module signature is misformatted." msgstr "" #. type: Plain text #: build/C/man2/init_module.2:162 msgid "Timeout while trying to resolve a symbol reference by this module." msgstr "" #. type: Plain text #: build/C/man2/init_module.2:166 msgid "" "An address argument referred to a location that is outside the process's " "accessible address space." msgstr "" "アドレス引き数が、プロセスがアクセスできるアドレス空間外の場所を参照してい" "た。" #. type: TP #: build/C/man2/init_module.2:166 #, no-wrap msgid "B (since Linux 3.7)" msgstr "B (Linux 3.7 以降)" #. commit 48ba2462ace6072741fd8d0058207d630ce93bf1 #. commit 1d0059f3a468825b5fc5405c636a2f6e02707ffa #. commit 106a4ee258d14818467829bf0e12aeae14c16cd7 #. type: Plain text #: build/C/man2/init_module.2:177 msgid "" "Module signature is invalid or the kernel does not have a key for this " "module. This error is returned only if the kernel was configured with " "B; if the kernel was not configured with this " "option, then an invalid or unsigned module simply taints the kernel." msgstr "" #. type: Plain text #: build/C/man2/init_module.2:180 msgid "Out of memory." msgstr "" #. type: Plain text #: build/C/man2/init_module.2:191 msgid "" "The caller was not privileged (did not have the B " "capability), or module loading is disabled (see I in B(5))." msgstr "" "呼び出し元が特権 (B ケーパビリティ) を持っていなかった。もし" "くはモジュールのロードが無効になっている (B(5) の I を参照)。" #. type: Plain text #: build/C/man2/init_module.2:194 msgid "The following errors may additionally occur for B():" msgstr "" #. type: Plain text #: build/C/man2/init_module.2:197 msgid "A module with this name is already loaded." msgstr "その名前のモジュールがすでにロードされている。" #. .TP #. .BR EINVAL " (Linux 2.4 and earlier)" #. Some #. .I image #. slot is filled in incorrectly, #. .I image\->name #. does not correspond to the original module name, some #. .I image\->deps #. entry does not correspond to a loaded module, #. or some other similar inconsistency. #. type: Plain text #: build/C/man2/init_module.2:213 msgid "" "I is invalid, or some part of the ELF image in I " "contains inconsistencies." msgstr "" #. type: TP #: build/C/man2/init_module.2:213 build/C/man2/init_module.2:236 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man2/init_module.2:219 msgid "" "The binary image supplied in I is not an ELF image, or is an " "ELF image that is invalid or for a different architecture." msgstr "" #. type: Plain text #: build/C/man2/init_module.2:222 msgid "The following errors may additionally occur for B():" msgstr "" #. type: TP #: build/C/man2/init_module.2:222 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man2/init_module.2:227 msgid "The file referred to by I is not opened for reading." msgstr "" #. type: TP #: build/C/man2/init_module.2:227 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man2/init_module.2:232 msgid "The file referred to by I is too large." msgstr "" #. type: Plain text #: build/C/man2/init_module.2:236 msgid "I is invalid." msgstr "I が無効である。" #. type: Plain text #: build/C/man2/init_module.2:240 msgid "I does not refer to an open file." msgstr "I がオープンされたファイルを参照していない。" #. type: Plain text #: build/C/man2/init_module.2:252 msgid "" "In addition to the above errors, if the module's I function is " "executed and returns an error, then B() or B() " "fails and I is set to the value returned by the I function." msgstr "" #. type: Plain text #: build/C/man2/init_module.2:255 msgid "B() is available since Linux 3.8." msgstr "B() は Linux 3.8 以降で利用可能である。" #. type: Plain text #: build/C/man2/init_module.2:260 msgid "B() and B() are Linux-specific." msgstr "B() と B() は Linux 固有である。" #. type: Plain text #: build/C/man2/init_module.2:263 msgid "" "Glibc does not provide a wrapper for these system calls; call them using " "B(2)." msgstr "" #. type: Plain text #: build/C/man2/init_module.2:268 msgid "" "Information about currently loaded modules can be found in I " "and in the file trees under the per-module subdirectories under I." msgstr "" #. type: Plain text #: build/C/man2/init_module.2:272 msgid "" "See the Linux kernel source file I for some useful " "background information." msgstr "" #. type: Plain text #: build/C/man2/init_module.2:277 msgid "" "In Linux 2.4 and earlier, the B() system call was rather " "different:" msgstr "" #. type: Plain text #: build/C/man2/init_module.2:279 msgid "B<#include Elinux/module.hE>" msgstr "B<#include Elinux/module.hE>" #. type: Plain text #: build/C/man2/init_module.2:281 msgid "" "B< int init_module(const char *>IB<, struct module *>IB<);>" msgstr "" "B< int init_module(const char *>IB<, struct module *>IB<);>" #. type: Plain text #: build/C/man2/init_module.2:289 msgid "" "(User-space applications can detect which version of B() is " "available by calling B(); the latter call fails with the error " "B on Linux 2.6 and later.)" msgstr "" #. type: Plain text #: build/C/man2/init_module.2:300 msgid "" "The older version of the system call loads the relocated module image " "pointed to by I into kernel space and runs the module's I " "function. The caller is responsible for providing the relocated image " "(since Linux 2.6, the B() system call does the relocation)." msgstr "" #. type: Plain text #: build/C/man2/init_module.2:304 msgid "" "The module image begins with a module structure and is followed by code and " "data as appropriate. Since Linux 2.2, the module structure is defined as " "follows:" msgstr "" "モジュールイメージは先頭部分に module 構造体があり、その後ろに 適切なコードと" "データが続く。 Linux 2.2 以降では module 構造体は以下のように定義されている。" #. type: Plain text #: build/C/man2/init_module.2:327 #, 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:337 msgid "" "All of the pointer fields, with the exception of I and I, 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 と I 以外の全てのポインタ要素はモジュール本体内部を指し、 カー" "ネル空間での適切な値で初期化される (つまり、モジュールの残りの 部分で再配置さ" "れる) ことが期待される。" #. type: Plain text #: build/C/man2/init_module.2:343 msgid "" "B(2), B(2), B(2), B(8), " "B(8)" msgstr "" "B(2), B(2), B(2), B(8), " "B(8)" #. type: TH #: build/C/man2/query_module.2:10 #, no-wrap msgid "QUERY_MODULE" msgstr "QUERY_MODULE" #. type: TH #: build/C/man2/query_module.2:10 #, no-wrap msgid "2013-01-27" msgstr "2013-01-27" #. type: Plain text #: build/C/man2/query_module.2:13 msgid "query_module - query the kernel for various bits pertaining to modules" msgstr "query_module - モジュールに関連する各種の情報をカーネルに問い合わせる" #. type: Plain text #: build/C/man2/query_module.2:19 #, no-wrap msgid "" "BIB<, int >IB<, void *>IB<,>\n" "B< size_t >IB<, size_t *>IB<);>\n" msgstr "" "BIB<, int >IB<, void *>IB<,>\n" "B< size_t >IB<, size_t *>IB<);>\n" #. type: Plain text #: build/C/man2/query_module.2:43 msgid "" "B() requests information from the kernel about loadable " "modules. The returned information is placed in the buffer pointed to by " "I. The caller must specify the size of I in I. The " "precise nature and format of the returned information depend on the " "operation specified by I. Some operations require I to " "identify a currently loaded module, some allow I to be NULL, " "indicating the kernel proper." msgstr "" "B() は、ローダブルモジュールに関する情報をカーネルに問い合わせ" "る。 情報は I が指し示すバッファに格納されて返される。 呼び出し元は " "I のサイズを I に指定しなければならない。 得られる情報の正確な" "意味とフォーマットは、 I でどの操作を指定するかによって異なる。 現在" "ロードされているモジュールを特定するために I を必要とする操作があれ" "ば、 カーネル固有であることを示す NULL を指定できる操作もある。" #. type: Plain text #: build/C/man2/query_module.2:46 msgid "The following values can be specified for I:" msgstr "I には以下の値を指定できる:" #. type: TP #: build/C/man2/query_module.2:46 #, no-wrap msgid "B<0>" msgstr "B<0>" #. type: Plain text #: build/C/man2/query_module.2:51 msgid "" "Returns success, if the kernel supports B(). Used to probe " "for availability of the system call." msgstr "" "カーネルが B() をサポートしている場合、成功を返す。 このシステ" "ムコールが利用可能かを調べるために使われる。" #. type: TP #: build/C/man2/query_module.2:51 #, no-wrap msgid "B" msgstr "B" #. ret is set on ENOSPC #. type: Plain text #: build/C/man2/query_module.2:59 msgid "" "Returns the names of all loaded modules. The returned buffer consists of a " "sequence of null-terminated strings; I is set to the number of modules." msgstr "" "ロードされている全てのモジュールの名前を返す。 バッファには、NULL 終端された" "文字列が順に入る。 返されるバッファ I にはモジュールの数が設定される。" #. type: TP #: build/C/man2/query_module.2:59 #, no-wrap msgid "B" msgstr "B" #. ret is set on ENOSPC #. type: Plain text #: build/C/man2/query_module.2:66 msgid "" "Returns the names of all modules used by the indicated module. The returned " "buffer consists of a sequence of null-terminated strings; I is set to " "the number of modules." msgstr "" "指定されたモジュールが使用している全モジュールの名前を返す。 バッファには、" "NULL 終端された文字列が順に入る。 返されるバッファ I にはモジュールの数" "が設定される。" #. type: TP #: build/C/man2/query_module.2:66 #, no-wrap msgid "B" msgstr "B" #. ret is set on ENOSPC #. type: Plain text #: build/C/man2/query_module.2:75 msgid "" "Returns the names of all modules using the indicated module. This is the " "inverse of B. The returned buffer consists of a sequence of null-" "terminated strings; I is set to the number of modules." msgstr "" "指定されたモジュールを使用している全モジュールの名前を返す。 これは " "B と逆の機能である。 バッファには、NULL 終端された文字列が順に入" "る。 返されるバッファ I にはモジュールの数が設定される。" #. type: TP #: build/C/man2/query_module.2:75 #, no-wrap msgid "B" msgstr "B" #. ret is set on ENOSPC #. type: Plain text #: build/C/man2/query_module.2:81 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:88 #, 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:98 msgid "" "followed by null-terminated strings. The value of I is the character " "offset of the string relative to the start of I; I is set to the " "number of symbols." msgstr "" "I の値は、 I の先頭からの文字列までのオフセット文字数である。 " "I にはシンボルの数が設定される。" #. type: TP #: build/C/man2/query_module.2:98 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man2/query_module.2:102 msgid "" "Returns miscellaneous information about the indicated module. The output " "buffer format is:" msgstr "" "指定されたモジュールに関する様々な情報を返す。 出力バッファのフォーマットは以" "下の形式となる:" #. type: Plain text #: build/C/man2/query_module.2:110 #, 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:129 msgid "" "where I
is the kernel address at which the module resides, I " "is the size of the module in bytes, and I is a mask of " "B, B, and so on, that indicates the current " "status of the module (see the Linux kernel source file I). I is set to the size of the I structure." msgstr "" "I
はそのモジュールが配置されているカーネル空間上のアドレス、 " "I はそのモジュールのバイト単位のサイズ、 I は B, " "B 等のマスクであり、そのモジュールの現在の状態を示す (Linux " "カーネルのソースファイル I を参照)。 I には " "I 構造体のサイズが設定される。" #. type: Plain text #: build/C/man2/query_module.2:143 msgid "" "At least one of I, I, or I was outside the program's " "accessible address space." msgstr "" "I, I, I の少なくとも一つが、プログラムがアクセスできる アドレ" "ス空間の外部であった。" #. Not permitted with QM_DEPS, QM_REFS, or QM_INFO. #. type: Plain text #: build/C/man2/query_module.2:153 msgid "" "Invalid I; or I is NULL (indicating \"the kernel\"), but this " "is not permitted with the specified value of I." msgstr "" "I が不正である。あるいは I が NULL だが (NULL は \"カーネル\" を" "示す)、 I で指定された値との組み合わせは許可されていない。" #. type: Plain text #: build/C/man2/query_module.2:158 msgid "No module by that I exists." msgstr "I という名前のモジュールが存在しない。" #. type: TP #: build/C/man2/query_module.2:158 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man2/query_module.2:163 msgid "" "The buffer size provided was too small. I is set to the minimum size " "needed." msgstr "" "与えられたバッファの大きさが小さすぎる。 I には最小限必要なバッファのサ" "イズが設定される。" #. type: Plain text #: build/C/man2/query_module.2:168 msgid "" "B() is not supported in this version of the kernel (e.g., the " "kernel is version 2.6 or later)." msgstr "" "B() はこのバージョンのカーネルではサポートされていない (例え" "ば、カーネルのバージョンが 2.6 以降)。" #. type: Plain text #: build/C/man2/query_module.2:175 msgid "B() is Linux-specific." msgstr "B() は Linux 固有である。" #. type: Plain text #: build/C/man2/query_module.2:183 msgid "" "Some of the information that was formerly available via B() " "can be obtained from I, I, and the files " "under the directory I." msgstr "" "以前 B() で得られた情報のいくつかは、 I, I および I ディレクトリ内のファイルから取得できる。" #. type: Plain text #: build/C/man2/query_module.2:187 msgid "" "Glibc does not provide a wrapper for this system call; in the unlikely event " "that you need to use it on an old kernel, use B(2)." msgstr "" "glibc はこのシステムコールに対するラッパー関数を提供していない。おそらくない" "と思うが、古いカーネルでこのシステムコールを使いたい場合は B(2) を使" "うこと。" #. type: Plain text #: build/C/man2/query_module.2:194 msgid "" "B(2), B(2), B(2), " "B(2), B(8), B(8)" msgstr "" "B(2), B(2), B(2), " "B(2), B(8), B(8)" #~ msgid "" #~ "B() attempts to remove an unused loadable module entry. " #~ "If I is NULL, all unused modules marked auto-clean will be " #~ "removed. This system call requires privilege." #~ msgstr "" #~ "B() は、未使用のローダブルモジュールのエントリを削除しよう" #~ "とする。 I が NULL の場合、未使用のモジュールのうち「自動削除 (auto-" #~ "clean)」 マークがついたものを全て削除する。 このシステムコールを使うには特" #~ "権が必要である。" #~ msgid "I was an empty string." #~ msgstr "I が空文字列である。" #~ msgid "" #~ "B() loads the relocated module image into kernel space and " #~ "runs the module's I function." #~ msgstr "" #~ "B() は再配置されたモジュールイメージをカーネル空間にロード" #~ "し、 そのモジュールの I 関数を実行する。" #~ msgid "This system call requires privilege." #~ msgstr "このシステムコールを使うには特権が必要である。" #~ msgid "The module's initialization routine failed." #~ msgstr "モジュールの初期化ルーチンが失敗した。" #~ msgid "" #~ "Some I slot is filled in incorrectly, Iname> does not " #~ "correspond to the original module name, some Ideps> entry " #~ "does not correspond to a loaded module, or some other similar " #~ "inconsistency." #~ msgstr "" #~ "一部の I スロットにおかしな値が入っている。または Iname> が元のモジュール名と一致していない。または、一部の Ideps> エントリがロードされたモジュールに対応していない。 または、他に" #~ "同様の矛盾が起こっている。"