OSDN Git Service

Update README
[linuxjm/LDP_man-pages.git] / release / man2 / io_setup.2
1 .\" Copyright (C) 2003 Free Software Foundation, Inc.
2 .\"
3 .\" %%%LICENSE_START(GPL_NOVERSION_ONELINE)
4 .\" This file is distributed according to the GNU General Public License.
5 .\" %%%LICENSE_END
6 .\"
7 .\"*******************************************************************
8 .\"
9 .\" This file was generated with po4a. Translate the source file.
10 .\"
11 .\"*******************************************************************
12 .\"
13 .\" Japanese Version Copyright (c) 2003 Akihiro MOTOKI, all rights reserved.
14 .\" Translated Mon Mar  8 2003 by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>
15 .\" Updated 2012-05-29, Akihiro MOTOKI <amotoki@gmail.com>
16 .\" Updated 2013-03-25, Akihiro MOTOKI <amotoki@gmail.com>
17 .\" Updated 2013-05-01, Akihiro MOTOKI <amotoki@gmail.com>
18 .\" Updated 2013-07-15, Akihiro MOTOKI <amotoki@gmail.com>
19 .\"
20 .TH IO_SETUP 2 2013\-06\-21 Linux "Linux Programmer's Manual"
21 .SH 名前
22 io_setup \- 非同期 I/O コンテキストを作成する
23 .SH 書式
24 .nf
25 \fB#include <linux/aio_abi.h>\fP          /* 必要な型の定義 */
26
27 \fBint io_setup(unsigned \fP\fInr_events\fP\fB, aio_context_t *\fP\fIctx_idp\fP\fB);\fP
28 .fi
29
30 \fI注\fP: このシステムコールには glibc のラッパー関数は存在しない。「注意」の節を参照。
31 .SH 説明
32 .PP
33 \fBio_setup\fP() システムコールは、 \fInr_events\fP 個のイベントを
34 同時に実行に適した非同期 I/O (AIO) コンテキストの作成を行う。 \fIctx_idp\fP 引き数
35 は、すでに存在する AIO コンテキストを指していてはならず、
36 \fBio_setup\fP() の呼び出しの前に 0 に初期化されていなければならない。
37 AIO コンテキストの作成に成功すると、 \fI*ctx_idp\fP に作成された AIO
38 コンテキストへのポインターがセットされる。
39 .SH 返り値
40 成功した場合、 \fBio_setup\fP()  は 0 を返す。 失敗時の返り値については、「注意」の節を参照すること。
41 .SH エラー
42 .TP 
43 \fBEAGAIN\fP
44 指定された \fInr_events\fP がユーザーが使用できるイベント数の上限を越えている。イベント数の上限は
45 \fI/proc/sys/fs/aio\-max\-nr\fP で定義されている。
46 .TP 
47 \fBEFAULT\fP
48 \fIctx_idp\fP に無効なポインターが指定されている。
49 .TP 
50 \fBEINVAL\fP
51 \fIctx_idp\fP が初期化されていないか、指定された \fInr_events\fP が内部の
52 制限値を越えている。また、 \fInr_events\fP は 0 より大きい値に設定
53 すべきである。
54 .TP 
55 \fBENOMEM\fP
56 必要なカーネルリソースを得られない。
57 .TP 
58 \fBENOSYS\fP
59 \fBio_setup\fP()  がこのアーキテクチャーでは実装されていない。
60 .SH バージョン
61 .PP
62 非同期 I/O システムコールは Linux 2.5 で初めて登場した。
63 .SH 準拠
64 .PP
65 \fBio_setup\fP()  は Linux 固有であり、移植を想定したプログラムで 使用すべきではない。
66 .SH 注意
67 .\" http://git.fedorahosted.org/git/?p=libaio.git
68 glibc はこのシステムコールのラッパー関数を提供していない。
69 \fBsyscall\fP(2) を使ってこのシステムコールを起動することができる。
70 しかし、たいていは、このシステムコールを呼び出したいのではなく、
71  \fIlibaio\fP が提供している \fBio_setup\fP ラッパー関数を呼び出したい
72 場合がほとんどであろう。
73
74 .\" But glibc is confused, since <libaio.h> uses 'io_context_t' to declare
75 .\" the system call.
76 \fIlibaio\fP のラッパー関数では \fIctx_idp\fP 引き数に別の型
77 (\fIio_context_t\ *\fP) が使われることに注意すること。
78 また、\fIlibaio\fP のラッパー関数は、エラーの通知が通常の C ライブラリの
79 慣習にしたがっておらず、エラーの場合には負のエラー番号 (エラーの節に列
80 挙されている値の一つを負にしたもの) が返り値となる点にも注意すること。
81 \fBsyscall\fP(2) 経由でシステムコールを起動すると、返り値は通常のエラー
82 通知の慣習に したがってものとなり、エラーの場合には \-1 が返り、
83 \fIerrno\fP にエラーを示す (正の) 値が設定される。
84 .SH 関連項目
85 .\" .SH AUTHOR
86 .\" Kent Yoder.
87 \fBio_cancel\fP(2), \fBio_destroy\fP(2), \fBio_getevents\fP(2), \fBio_submit\fP(2),
88 \fBaio\fP(7)
89 .SH この文書について
90 この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.79 の一部
91 である。プロジェクトの説明とバグ報告に関する情報は
92 http://www.kernel.org/doc/man\-pages/ に書かれている。