OSDN Git Service

Update release for LDP 3.67
[linuxjm/LDP_man-pages.git] / release / man2 / semctl.2
index 273c98c..5411124 100644 (file)
 .\" This file was generated with po4a. Translate the source file.
 .\"
 .\"*******************************************************************
-.TH SEMCTL 2 2012\-05\-31 Linux "Linux Programmer's Manual"
+.\"
+.\" Japanese Version Copyright (c) 1997,1998 HANATAKA Shinya
+.\"         all rights reserved.
+.\" Translated 1997-02-23, HANATAKA Shinya <hanataka@abyss.rim.or.jp>
+.\" Modified 1998-09-10, HANATAKA Shinya <hanataka@abyss.rim.or.jp>
+.\" Updated & Modified 2001-06-03, Yuichi SATO <ysato@h4.dion.ne.jp>
+.\" Updated & Modified 2002-01-02, Yuichi SATO
+.\" Updated & Modified 2005-01-03, Yuichi SATO <ysato444@yahoo.co.jp>
+.\" Updated & Modified 2005-10-10, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>
+.\" Updated 2013-05-06, Akihiro MOTOKI <amotoki@gmail.com>
+.\" Updated 2013-07-24, Akihiro MOTOKI <amotoki@gmail.com>
+.\"
+.TH SEMCTL 2 2013\-06\-03 Linux "Linux Programmer's Manual"
 .SH 名前
-semctl \- セマフォの制御操作を行なう
+semctl \- System V セマフォの制御操作を行なう
 .SH 書式
 .nf
 \fB#include <sys/types.h>\fP
@@ -55,8 +67,8 @@ semctl \- セマフォの制御操作を行なう
 \fBint semctl(int \fP\fIsemid\fP\fB, int \fP\fIsemnum\fP\fB, int \fP\fIcmd\fP\fB, ...);\fP
 .fi
 .SH 説明
-\fBsemctl\fP()  は、 \fIsemid\fP で指定されたセマフォ集合 (semaphore set)  またはセマフォ集合の \fIsemnun\fP
-番目のセマフォに対して、 \fIcmd\fP で指定された制御操作を行なう (集合内のセマフォの番号は 0 から始まる)。
+\fBsemctl\fP()  は、 \fIsemid\fP で指定された System\ V セマフォ集合 (semaphore set)  またはセマフォ集合の
+\fIsemnun\fP 番目のセマフォに対して、 \fIcmd\fP で指定された制御操作を行なう (集合内のセマフォの番号は 0 から始まる)。
 .PP
 この関数は、 \fIcmd\fP の値に依存して、3 個または 4 個の引き数を持つ。 引き数が 4 個の場合、第 4 引き数の型は \fIunion
 semun\fP である。 \fI呼び出し元プログラム\fPは、 この共用体 (union) を以下のように定義しなければならない。
@@ -81,7 +93,7 @@ struct semid_ds {
     struct ipc_perm sem_perm;  /* 所有権と許可 */
     time_t          sem_otime; /* 最後の semop の時刻 */
     time_t          sem_ctime; /* 最後に変更が行われた時刻 */
-    unsigned short  sem_nsems; /* 集合内のセマフォの数 */
+    unsigned long   sem_nsems; /* 集合内のセマフォの数 */
 };
 .in
 .fi
@@ -102,7 +114,7 @@ struct ipc_perm {
 .in
 .fi
 .PP
-\fIcmd\fP として有効な値は
+\fIcmd\fP として有効な値は次の通りである。
 .TP  10
 \fBIPC_STAT\fP
 \fIsemid\fP に関連づけられたカーネルデータ構造体の情報を \fIarg.buf\fP で指された \fIsemid_ds\fP 構造体へコピーする。
@@ -164,20 +176,20 @@ struct  seminfo {
 呼び出したプロセスはそのセマフォ集合に読み込み許可を持たなければならない。
 .TP 
 \fBGETNCNT\fP
-システムコールは集合の \fIsemnum\fP 番目のセマフォの \fBsemncnt\fP の値を返す (集合の \fIsemnum\fP 番目のセマフォの
-\fBsemval\fP の増加を待っているプロセスの数を返す)。 呼び出したプロセスはそのセマフォ集合に読み込み許可を持たなければならない。
+集合の \fIsemnum\fP 番目のセマフォの \fBsemncnt\fP の値を返す (集合の \fIsemnum\fP 番目のセマフォの \fBsemval\fP
+の増加を待っているプロセスの数を返す)。 呼び出したプロセスはそのセマフォ集合に読み込み許可を持たなければならない。
 .TP 
 \fBGETPID\fP
-システムコールは集合の \fIsemnum\fP 番目のセマフォの \fBsempid\fP の値 (集合の \fIsemnum\fP 番目のセマフォに最後に
-\fBsemop\fP(2)  コールを実行したプロセスの PID) を返す。 呼び出したプロセスはそのセマフォ集合に読み込み許可を持たなければならない。
+集合の \fIsemnum\fP 番目のセマフォの \fBsempid\fP の値 (集合の \fIsemnum\fP 番目のセマフォに最後に \fBsemop\fP(2)
+コールを実行したプロセスの PID) を返す。 呼び出したプロセスはそのセマフォ集合に読み込み許可を持たなければならない。
 .TP 
 \fBGETVAL\fP
-システムコールは集合の \fIsemnum\fP 番目のセマフォの \fBsemval\fP の値を返す。
+集合の \fIsemnum\fP 番目のセマフォの \fBsemval\fP の値を返す。
 呼び出したプロセスはそのセマフォ集合に読み込み許可を持たなければならない。
 .TP 
 \fBGETZCNT\fP
-システムコールは集合の \fIsemnum\fP 番目のセマフォの \fBsemzcnt\fP の値を返す (集合の \fIsemnum\fP 番目のセマフォの
-\fBsemval\fP の値が 0 になるのを待っているプロセスの数を返す)。 呼び出したプロセスはそのセマフォ集合に読み込み許可を持たなければならない。
+集合の \fIsemnum\fP 番目のセマフォの \fBsemzcnt\fP の値を返す (集合の \fIsemnum\fP 番目のセマフォの \fBsemval\fP
+の値が 0 になるのを待っているプロセスの数を返す)。 呼び出したプロセスはそのセマフォ集合に読み込み許可を持たなければならない。
 .TP 
 \fBSETALL\fP
 集合の全てのセマフォの \fBsemval\fP に \fIarg.array\fP で指定された値を設定する。 その集合に関連する \fIsemid_ds\fP
@@ -195,7 +207,7 @@ struct  seminfo {
 失敗した場合、 \fBsemctl\fP()  は \-1 を返し、 \fIerrno\fP にそのエラーを示す。
 
 そうでなければシステムコールは \fIcmd\fP によって以下の負でない値を返す:
-.TP  12
+.TP  10
 \fBGETNCNT\fP
 \fBsemncnt\fP の値
 .TP 
@@ -248,17 +260,19 @@ struct  seminfo {
 .SH 準拠
 .\" SVr4 documents more error conditions EINVAL and EOVERFLOW.
 SVr4, POSIX.1\-2001.
+
+POSIX.1\-2001 では \fIsemid_ds\fP 構造体の \fIsem_nsems\fP フィールドは \fIunsigned\ short\fP
+型を持つと規定されており、 他のほとんどのシステムでこのフィールドは \fIunsigned\ short\fP 型になっている。 Linux 2.4
+以前ではそうなっていたが、 Linux 2.4 以降ではこのフィールドは \fIunsigned\ long\fP 型である。
 .SH 注意
 .\" Like Linux, the FreeBSD man pages still document
 .\" the inclusion of these header files.
-The inclusion of \fI<sys/types.h>\fP and \fI<sys/ipc.h>\fP isn't
-required on Linux or by any version of POSIX.  However, some old
-implementations required the inclusion of these header files, and the SVID
-also documented their inclusion.  Applications intended to be portable to
-such old systems may need to include these header files.
+Linux や POSIX の全てのバージョンでは、 \fI<sys/types.h>\fP と \fI<sys/ipc.h>\fP
+のインクルードは必要ない。しかしながら、いくつかの古い実装ではこれらのヘッダファイルのインクルードが必要であり、 SVID
+でもこれらのインクルードをするように記載されている。このような古いシステムへの移植性を意図したアプリケーションではこれらのファイルをインクルードする必要があるかもしれない。
 
 \fBIPC_INFO\fP, \fBSEM_STAT\fP, \fBSEM_INFO\fP 操作は \fBipcs\fP(1)
-プログラムによって割当られた資源について情報を提供するために使用される。 将来的にはこれらは変更されるか、 /proc
+プログラムによって割当られた資源について情報を提供するために使用される。 将来的にはこれらは変更されるか、 \fI/proc\fP
 ファイル・システム・インタフェースに移動されるかもしれない。
 .LP
 \fI構造体 semid_ds\fP 内の多くのフィールドは、 Linux 2.2 では \fIshort\fP 型だったが、Linux 2.4 では
@@ -279,6 +293,6 @@ POSIX.1\-2001 では呼び出し側がこの共用体を定義する必要があ
 \fBipc\fP(2), \fBsemget\fP(2), \fBsemop\fP(2), \fBcapabilities\fP(7),
 \fBsem_overview\fP(7), \fBsvipc\fP(7)
 .SH この文書について
-この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.50 の一部
+この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.67 の一部
 である。プロジェクトの説明とバグ報告に関する情報は
 http://www.kernel.org/doc/man\-pages/ に書かれている。