OSDN Git Service

(split) LDP: Release pages for LDP v3.39.
[linuxjm/LDP_man-pages.git] / release / man2 / epoll_ctl.2
index 1025f05..8c1b93c 100644 (file)
 .\"
 .\"  Davide Libenzi <davidel@xmailserver.org>
 .\"
-.\" Japanese Version Copyright (c) 2004-2005 Yuichi SATO
-.\"         all rights reserved.
-.\" Translated 2004-06-15, Yuichi SATO <ysato444@yahoo.co.jp>
-.\" Updated & Modified 2004-12-29, Yuichi SATO
-.\" Updated & Modified 2005-04-20, Yuichi SATO
-.\" Updated & Modified 2005-09-06, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>
-.\" Updated 2006-07-19, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>, LDP v2.36
-.\" Updated 2009-02-23, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>, LDP v3.19
+.\"*******************************************************************
 .\"
-.TH EPOLL_CTL 2 2010-08-29 "Linux" "Linux Programmer's Manual"
+.\" This file was generated with po4a. Translate the source file.
+.\"
+.\"*******************************************************************
+.TH EPOLL_CTL 2 2012\-04\-15 Linux "Linux Programmer's Manual"
 .SH 名前
 epoll_ctl \- epoll ディスクリプタのインタフェースを操作する
 .SH 書式
-.B #include <sys/epoll.h>
+\fB#include <sys/epoll.h>\fP
 .sp
-.BI "int epoll_ctl(int " epfd ", int " op ", int " fd \
-", struct epoll_event *" event );
+\fBint epoll_ctl(int \fP\fIepfd\fP\fB, int \fP\fIop\fP\fB, int \fP\fIfd\fP\fB, struct
+epoll_event *\fP\fIevent\fP\fB);\fP
 .SH 説明
-このシステムコールは、ファイルディスクリプタ
-.I epfd
-が参照する epoll インスタンスに対する操作を行う。
-対象のファイルディスクリプタ
-.I fd
-に対して、操作
-.I op
-の実行が要求される。
+このシステムコールは、ファイルディスクリプタ \fIepfd\fP が参照する \fBepoll\fP(7)
+インスタンスに対する操作を行う。 対象のファイルディスクリプタ \fIfd\fP に対して、
+操作 \fIop\fP の実行が要求される。
 
-.I op
-引き数に指定できる有効な値は以下の通りである。
-.TP
-.B EPOLL_CTL_ADD
-対象のファイルディスクリプタ
-.I fd
-をファイルディスクリプタ
-.I epfd
-が参照する
-.B epoll
-インスタンスに登録し、イベント
-.I event
-を
-.I fd
-に結び付けられた内部ファイルに関連付ける。
-.TP
-.B EPOLL_CTL_MOD
-イベント
-.I event
-を対象のファイルディスクリプタ
-.I fd
-に関連付けるように変更する。
-.TP
-.B EPOLL_CTL_DEL
-対象のファイルディスクリプタ
-.I fd
-を
-.I epfd
-が参照する
-.B epoll
-インスタンスから削除する。
-.I event
-引き数は無視されるので、NULL にすることもできる
-(但し、下記の「バグ」を参照)。
+\fIop\fP 引き数に指定できる有効な値は以下の通りである。
+.TP 
+\fBEPOLL_CTL_ADD\fP
+対象のファイルディスクリプタ \fIfd\fP をファイルディスクリプタ \fIepfd\fP が参照する \fBepoll\fP インスタンスに登録し、イベント
+\fIevent\fP を \fIfd\fP に結び付けられた内部ファイルに関連付ける。
+.TP 
+\fBEPOLL_CTL_MOD\fP
+イベント \fIevent\fP を対象のファイルディスクリプタ \fIfd\fP に関連付けるように変更する。
+.TP 
+\fBEPOLL_CTL_DEL\fP
+対象のファイルディスクリプタ \fIfd\fP を \fIepfd\fP が参照する \fBepoll\fP インスタンスから削除する。 \fIevent\fP
+引き数は無視されるので、NULL にすることもできる (但し、下記の「バグ」を参照)。
 .PP
-.I event
-引き数は、ファイルディスクリプタ
-.I fd
-にリンクされたオブジェクトを表す。
-.I struct epoll_event
+\fIevent\fP 引き数は、ファイルディスクリプタ \fIfd\fP にリンクされたオブジェクトを表す。 \fIstruct epoll_event\fP
 は以下のように定義される:
 .sp
 .in +4n
@@ -103,166 +68,82 @@ struct epoll_event {
 .fi
 .in
 
-.I events
-メンバは、以下のような使用可能なイベントタイプを使って構成された
-ビットセットである。
-.TP
-.B EPOLLIN
-関連付けられたファイルに対して、
-.BR read (2)
-操作が可能である。
-.TP
-.B EPOLLOUT
-関連付けられたファイルに対して、
-.BR write (2)
-操作が可能である。
-.TP
-.BR EPOLLRDHUP" (Linux 2.6.17 以降)"
-ストリームソケットの他端が、コネクションの close 、
-またはコネクションの書き込み側の shutdown を行った。
-(このフラグを使うと、エッジトリガの監視を行う場合に、
-通信のもう一端が閉じられたことを検知するコードを
-非常に簡潔に書くことができる。)
-.TP
-.B EPOLLPRI
-.BR read (2)
-操作が可能な緊急 (urgent) データがある。
-.TP
-.B EPOLLERR
-関連付けられたファイルディスクリプタにエラー条件が起こった。
-.BR epoll_wait (2)
-は常にこのイベントを待つので、
-.I events
+\fIevents\fP メンバは、以下のような使用可能なイベントタイプを使って構成された ビットセットである。
+.TP 
+\fBEPOLLIN\fP
+関連付けられたファイルに対して、 \fBread\fP(2)  操作が可能である。
+.TP 
+\fBEPOLLOUT\fP
+関連付けられたファイルに対して、 \fBwrite\fP(2)  操作が可能である。
+.TP 
+\fBEPOLLRDHUP"\fP(Linux\fB2.6.17\fP以降)"
+ストリームソケットの他端が、コネクションの close 、 またはコネクションの書き込み側の shutdown を行った。
+(このフラグを使うと、エッジトリガの監視を行う場合に、 通信のもう一端が閉じられたことを検知するコードを 非常に簡潔に書くことができる。)
+.TP 
+\fBEPOLLPRI\fP
+\fBread\fP(2)  操作が可能な緊急 (urgent) データがある。
+.TP 
+\fBEPOLLERR\fP
+関連付けられたファイルディスクリプタにエラー条件が起こった。 \fBepoll_wait\fP(2)  は常にこのイベントを待つので、 \fIevents\fP
 に設定する必要はない。
-.TP
-.B EPOLLHUP
-関連付けられたファイルディスクリプタにハングアップが起こった。
-.BR epoll_wait (2)
-は常にこのイベントを待つので、
-.I events
+.TP 
+\fBEPOLLHUP\fP
+関連付けられたファイルディスクリプタにハングアップが起こった。 \fBepoll_wait\fP(2)  は常にこのイベントを待つので、 \fIevents\fP
 に設定する必要はない。
-.TP
-.B EPOLLET
-関連付けられたファイルディスクリプタに
-エッジトリガ動作 (Edge Triggered behavior) を設定する。
-.B epoll
-のデフォルトの動作は、レベルトリガ (Level Triggered) である。
-エッジトリガとレベルトリガによるイベント分配機構
-(event distribution architectures) についての詳細な情報は、
-.BR epoll (7)
-を参照すること。
-.TP
-.BR EPOLLONESHOT " (Linux 2.6.2 以降)"
-関連付けられたファイルディスクリプタに
-一撃動作 (One-Shot  behavior) を設定する。
-これはイベントが
-.BR epoll_wait (2)
-によって引き出された後、
-関連付けられたファイルディスクリプタが内部的に破棄され、
-.B epoll
-インタフェースによってイベントが報告されなくなることを意味する。
-新しいイベントマスクでファイルディスクリプタを再度有効にするためには、
-.BR epoll_ctl ()
-に
-.B EPOLL_CTL_MOD
-を指定して呼び出さなければならない。
-.I op
+.TP 
+\fBEPOLLET\fP
+関連付けられたファイルディスクリプタに エッジトリガ動作 (Edge Triggered behavior) を設定する。 \fBepoll\fP
+のデフォルトの動作は、レベルトリガ (Level Triggered) である。 エッジトリガとレベルトリガによるイベント分配機構 (event
+distribution architectures) についての詳細な情報は、 \fBepoll\fP(7)  を参照すること。
+.TP 
+\fBEPOLLONESHOT\fP (Linux 2.6.2 以降)
+関連付けられたファイルディスクリプタに 一撃動作 (One\-Shot behavior) を設定する。 これはイベントが
+\fBepoll_wait\fP(2)  によって引き出された後、 関連付けられたファイルディスクリプタが内部的に破棄され、 \fBepoll\fP
+インタフェースによってイベントが報告されなくなることを意味する。 新しいイベントマスクでファイルディスクリプタを再度有効にするためには、
+\fBepoll_ctl\fP()  に \fBEPOLL_CTL_MOD\fP を指定して呼び出さなければならない。 \fIop\fP
 引き数に指定できる有効な値は、以下の通り:
 .SH 返り値
-成功した場合、
-.BR epoll_ctl ()
-は 0 を返す。
-エラーが起こった場合、
-.BR epoll_ctl ()
-は \-1 を返し、
-.I errno
-を適切に設定する。
+成功した場合、 \fBepoll_ctl\fP()  は 0 を返す。 エラーが起こった場合、 \fBepoll_ctl\fP()  は \-1 を返し、
+\fIerrno\fP を適切に設定する。
 .SH エラー
-.TP
-.B EBADF
-.I epfd
-か
-.I fd
-が有効なファイルディスクリプタでない。
-.TP
-.B EEXIST
-.I op
-が
-.B EPOLL_CTL_ADD
-であり、かつ与えられたファイルディスクリプタ
-.I fd
-がこの epoll インスタンスに既に登録されている。
-.TP
-.B EINVAL
-.I epfd
-が
-.B epoll
-ファイルディスクリプタでない。
-または
-.I fd
-が
-.I epfd
-と同一である。
-または要求された操作
-.I op
-がこのインタフェースでサポートされていない。
-.TP
-.B ENOENT
-.I op
-が
-.B EPOLL_CTL_MOD
-または
-.B EPOLL_CTL_DEL
-で、かつ
-.I fd
-がこの epoll インスタンスに登録されていない。
-.TP
-.B ENOMEM
-要求された
-.I op
-制御操作を扱うのに十分なメモリがない。
-.TP
-.B ENOSPC
-epoll インスタンスに新しいファイルディスクリプタを登録
-.RB ( EPOLL_CTL_ADD )
-しようとした際に、
-.I /proc/sys/fs/epoll/max_user_watches
-で決まる上限に達した。
-詳細は
-.BR epoll (7)
-を参照。
-.TP
-.B EPERM
-対象ファイル
-.I fd
-が
-.B epoll
-をサポートしていない。
+.TP 
+\fBEBADF\fP
+\fIepfd\fP か \fIfd\fP が有効なファイルディスクリプタでない。
+.TP 
+\fBEEXIST\fP
+\fIop\fP が \fBEPOLL_CTL_ADD\fP であり、かつ与えられたファイルディスクリプタ \fIfd\fP がこの epoll
+インスタンスに既に登録されている。
+.TP 
+\fBEINVAL\fP
+\fIepfd\fP が \fBepoll\fP ファイルディスクリプタでない。 または \fIfd\fP が \fIepfd\fP と同一である。 または要求された操作
+\fIop\fP がこのインタフェースでサポートされていない。
+.TP 
+\fBENOENT\fP
+\fIop\fP が \fBEPOLL_CTL_MOD\fP または \fBEPOLL_CTL_DEL\fP で、かつ \fIfd\fP がこの epoll
+インスタンスに登録されていない。
+.TP 
+\fBENOMEM\fP
+要求された \fIop\fP 制御操作を扱うのに十分なメモリがない。
+.TP 
+\fBENOSPC\fP
+epoll インスタンスに新しいファイルディスクリプタを登録 (\fBEPOLL_CTL_ADD\fP)  しようとした際に、
+\fI/proc/sys/fs/epoll/max_user_watches\fP で決まる上限に達した。 詳細は \fBepoll\fP(7)  を参照。
+.TP 
+\fBEPERM\fP
+対象ファイル \fIfd\fP が \fBepoll\fP をサポートしていない。
+.SH バージョン
+.\" To be precise: kernel 2.5.44.
+.\" The interface should be finalized by Linux kernel 2.5.66.
+\fBepoll_ctl\fP()  はカーネル 2.6 で追加された。
 .SH 準拠
-.BR epoll_ctl ()
-は Linux 独自であり、カーネル 2.5.44 で導入された。
-.\" インタフェースは Linux カーネル 2.5.66 で確定されるべきである。
-.SH 備考
-.B epoll
-インタフェースは、
-.BR poll (2)
-に対応している全てのファイルディスクリプタに対応している。
+\fBepoll_ctl\fP()  は Linux 独自である。
+ライブラリによるサポートは glibc バージョン 2.3.2 以降で提供されている。
+.SH 注意
+\fBepoll\fP インタフェースは、 \fBpoll\fP(2)  に対応している全てのファイルディスクリプタに対応している。
 .SH バグ
-Linux 2.6.9 より前では、
-.B EPOLL_CTL_DEL
-操作の際、引き数
-.I event
-に (たとえ無視される場合であっても) NULL でないポインタを渡す必要があった。
-カーネル 2.6.9 以降では、
-.B EPOLL_CTL_DEL
-を使う際に
-.I event
-に NULL を指定できるようになっている。
-2.6.9 より前のカーネルへの移植性が必要なアプリケーションでは、
-.I event
-に NULL でないポインタを指定すべきである。
+Linux 2.6.9 より前では、 \fBEPOLL_CTL_DEL\fP 操作の際、引き数 \fIevent\fP に (たとえ無視される場合であっても)
+NULL でないポインタを渡す必要があった。 カーネル 2.6.9 以降では、 \fBEPOLL_CTL_DEL\fP を使う際に \fIevent\fP に
+NULL を指定できるようになっている。 2.6.9 より前のカーネルへの移植性が必要なアプリケーションでは、 \fIevent\fP に NULL
+でないポインタを指定すべきである。
 .SH 関連項目
-.BR epoll_create (2),
-.BR epoll_wait (2),
-.BR poll (2),
-.BR epoll (7)
+\fBepoll_create\fP(2), \fBepoll_wait\fP(2), \fBpoll\fP(2), \fBepoll\fP(7)