X-Git-Url: http://git.osdn.net/view?p=linuxjm%2FLDP_man-pages.git;a=blobdiff_plain;f=release%2Fman2%2Fintro.2;h=9284caa94f5be1e11b61412cae8f8c3625e7877b;hp=b16ee3095e3072bd10ab9418b400d78ad838bfbf;hb=83f9e5d087c3464d5131604d3c9893479e6228eb;hpb=a2b0f650fa5e3f097a33752f9ee5626f8d678fd8 diff --git a/release/man2/intro.2 b/release/man2/intro.2 index b16ee309..9284caa9 100644 --- a/release/man2/intro.2 +++ b/release/man2/intro.2 @@ -36,15 +36,28 @@ .\" all rights reserved. .\" Translated 2008-02-10, Akihiro MOTOKI .\" -.TH INTRO 2 2010\-11\-11 Linux "Linux Programmer's Manual" +.TH INTRO 2 2014\-02\-20 Linux "Linux Programmer's Manual" .SH 名前 intro \- システムコールの説明 .SH 説明 -マニュアルの 2 章では Linux のシステムコールについて説明している。 システムコールは Linux カーネルへのエントリポイントである。 +マニュアルの 2 章では Linux のシステムコールについて説明している。 システムコールは Linux カーネルへのエントリーポイントである。 通常は、システムコールは直接起動される訳ではなく、 ほとんどのシステムコールには対応する C ライブラリのラッパー関数があり、 そのラッパー関数がシステムコールを呼び出すのに必要な処理を実行する。 そのため、システムコールを呼び出すのは通常のライブラリ関数を呼び出すのと 同じように見える。 +多くの場合、 C ライブラリのラッパー関数が行うのは以下のことだけである。 +.IP * 3 +引き数と一意なシステムコール番号をカーネルが期待するレジスターにコピーする +.IP * +カーネルがシステムコールの実際の処理を行う時点でカーネルモードに入る +.IP * +カーネルが CPU をユーザーモードに返した際にシステムコールがエラー番号を返したいれば \fIerrno\fP を設定する +.LP +しかし、ラッパー関数がこれ以上のことを行う場合もいくつかある。例えば、カーネルモードに入る前に引き数に対する前処理を実行したり、システムコールが返した値に対する後処理を行うなどである。このような場合、セクション +2 のマニュアルページでは、基本的に、C ライブラリ API インターフェース (通常は GNU C ライブラリのもの) +と生のシステムコールの両方の詳細をできるだけ説明しようとする。ほとんどの場合、メインとなる「説明」では C +ライブラリのインターフェースに焦点をあてて説明し、システムコールでの差分については「注意」のセクションに説明がある。 + Linux のシステムコールのリストについては \fBsyscalls\fP(2) を参照のこと。 .SH 返り値 エラーの場合、ほとんどのシステムコールは負のエラー番号を返す (具体的には \fBerrno\fP(3) @@ -54,8 +67,8 @@ Linux のシステムコールのリストについては \fBsyscalls\fP(2) を 成功時にシステムコールが返す値はシステムコールにより異なる。 多くのシステムコールは成功時に 0 を返すが、 成功時に 0 以外の値を返すシステムコールもある。 詳細は個々のマニュアルページで説明されている。 -マニュアルページの「書式」の節に規定されたヘッダファイルから関数の定義を 得るために、プログラマが機能検査マクロを定義しなければならない場合がある -(機能検査マクロの定義が必要な場合、これらの機能検査マクロの定義は 「どの」ヘッダファイルのインクルードよりも前で行われなければならない)。 +マニュアルページの「書式」の節に規定されたヘッダーファイルから関数の定義を 得るために、プログラマが機能検査マクロを定義しなければならない場合がある +(機能検査マクロの定義が必要な場合、これらの機能検査マクロの定義は 「どの」ヘッダーファイルのインクルードよりも前で行われなければならない)。 このような場合には、必要なマクロがマニュアルページで説明されている。 機能検査マクロのさらなる情報については、 \fBfeature_test_macros\fP(7) を参照のこと。 .SH 準拠 @@ -66,7 +79,7 @@ Linux のシステムコールのリストについては \fBsyscalls\fP(2) を このような場合は、プログラマは \fBsyscall\fP(2) を使って、自分でシステムコールを呼び出さなければならない。 過去には、 \fB_syscall\fP(2) マクロの一つを使ってシステムコールの呼び出すこともできた。 .SS 著者と著作権 -著者と著作権に関しては各マニュアルページのソースのヘッダを参照すること。 これらはページごとに異なる可能性があることに注意してほしい。 +著者と著作権に関しては各マニュアルページのソースのヘッダーを参照すること。 これらはページごとに異なる可能性があることに注意してほしい。 .SH 関連項目 .ad l .nh @@ -76,6 +89,6 @@ Linux のシステムコールのリストについては \fBsyscalls\fP(2) を \fBsem_overview\fP(7), \fBshm_overview\fP(7), \fBsignal\fP(7), \fBsocket\fP(7), \fBstandards\fP(7), \fBsvipc\fP(7), \fBsymlink\fP(7), \fBtime\fP(7) .SH この文書について -この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.54 の一部 +この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.79 の一部 である。プロジェクトの説明とバグ報告に関する情報は http://www.kernel.org/doc/man\-pages/ に書かれている。