X-Git-Url: http://git.osdn.net/view?p=linuxjm%2FLDP_man-pages.git;a=blobdiff_plain;f=release%2Fman2%2Fcreate_module.2;h=6d0a52894c61ea5acf5e5ef8d9cb9fb3dc8295f5;hp=330786ee58f2af93ad43fa8911e42a9059db12fc;hb=83f9e5d087c3464d5131604d3c9893479e6228eb;hpb=4fa3e54b837e5814a4598ec901d77446bf5cb9b3 diff --git a/release/man2/create_module.2 b/release/man2/create_module.2 index 330786ee..6d0a5289 100644 --- a/release/man2/create_module.2 +++ b/release/man2/create_module.2 @@ -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 @@ -10,18 +12,26 @@ .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* -.TH CREATE_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 +.\" +.TH CREATE_MODULE 2 2014\-05\-10 Linux "Linux Programmer's Manual" .SH 名前 -create_module \- ローダブルモジュールのエントリを作成する +create_module \- ローダーブルモジュールのエントリーを作成する .SH 書式 .nf \fB#include \fP .sp \fBcaddr_t create_module(const char *\fP\fIname\fP\fB, size_t \fP\fIsize\fP\fB);\fP .fi + +\fI注意\fP: この関数の宣言は glibc のヘッダーでは提供されていない。「注意」を参照。 .SH 説明 -\fBcreate_module\fP() は、ローダブルモジュールのエントリを作成し、そのモジュールの保持に必要な カーネルメモリを予約しようとする。 -このシステムコールを使うには特権が必要である。 +\fI注意\fP: このシステムコールが存在するのは、カーネル 2.6 より前の Linux だけである。 + +\fBcreate_module\fP() は、ローダーブルモジュールのエントリーを作成し、そのモジュールの保持に必要な +カーネルメモリーを予約しようとする。 このシステムコールを使うには特権が必要である。 .SH 返り値 成功すると、モジュールが配置されるカーネル空間のアドレスを返す。 エラーの場合 \-1 を返し、 \fIerrno\fP を適切に設定する。 .SH エラー @@ -33,13 +43,13 @@ create_module \- ローダブルモジュールのエントリを作成する \fIname\fP がプログラムがアクセスできるアドレス空間の外部にある。 .TP \fBEINVAL\fP -要求したサイズが小さすぎて、モジュールのヘッダ情報すら格納できない。 +要求したサイズが小さすぎて、モジュールのヘッダー情報すら格納できない。 .TP \fBENOMEM\fP -モジュールを格納するのに必要な大きさの連続したメモリブロックを カーネルが確保できなかった。 +モジュールを格納するのに必要な大きさの連続したメモリーブロックを カーネルが確保できなかった。 .TP \fBENOSYS\fP -\fBcreate_module\fP() がこのバージョンのカーネルではサポートされていない。 +\fBcreate_module\fP() がこのバージョンのカーネルではサポートされていない (例えば、カーネルのバージョンが 2.6 以降)。 .TP \fBEPERM\fP 呼び出し元が特権 (\fBCAP_SYS_MODULE\fP ケーパビリティ) を持っていなかった。 @@ -48,5 +58,14 @@ create_module \- ローダブルモジュールのエントリを作成する このシステムコールが存在するのはカーネル 2.4 までの Linux だけである。 Linux 2.6 では削除された。 .SH 準拠 \fBcreate_module\fP() は Linux 固有である。 +.SH 注意 +\fBcreate_module\fP() システムコールは glibc ではサポートされていない。 glibc ヘッダーでは宣言は提供されていないが、 +歴史の紆余曲折を経て glibc はこのシステムコールに対する ABI を公開していない。 +したがって、このシステムコールを利用するには、自分のコードの中で手動でインターフェースを宣言すればよい。 \fBsyscall\fP(2) +を使ってシステムコールを起動できる。 .SH 関連項目 \fBdelete_module\fP(2), \fBinit_module\fP(2), \fBquery_module\fP(2) +.SH この文書について +この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.79 の一部 +である。プロジェクトの説明とバグ報告に関する情報は +http://www.kernel.org/doc/man\-pages/ に書かれている。