OSDN Git Service

(split) LDP: Some works on ja.po for v3.40.
[linuxjm/LDP_man-pages.git] / po4a / aio / po / ja.po
1 # SOME DESCRIPTIVE TITLE
2 # Copyright (C) YEAR Free Software Foundation, Inc.
3 # This file is distributed under the same license as the PACKAGE package.
4 # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
5 #
6 msgid ""
7 msgstr ""
8 "Project-Id-Version: PACKAGE VERSION\n"
9 "POT-Creation-Date: 2012-05-01 04:37+0900\n"
10 "PO-Revision-Date: 2012-05-02 08:26+0900\n"
11 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12 "Language-Team: LANGUAGE <LL@li.org>\n"
13 "Language: \n"
14 "MIME-Version: 1.0\n"
15 "Content-Type: text/plain; charset=UTF-8\n"
16 "Content-Transfer-Encoding: 8bit\n"
17
18 #. type: TH
19 #: build/C/man7/aio.7:24
20 #, no-wrap
21 msgid "AIO"
22 msgstr "AIO"
23
24 #. type: TH
25 #: build/C/man7/aio.7:24 build/C/man3/aio_fsync.3:23
26 #: build/C/man3/aio_suspend.3:24 build/C/man3/aio_write.3:23
27 #, no-wrap
28 msgid "2010-10-02"
29 msgstr "2010-10-02"
30
31 #. type: TH
32 #: build/C/man7/aio.7:24 build/C/man3/aio_init.3:24
33 #: build/C/man2/io_cancel.2:23 build/C/man2/io_destroy.2:23
34 #: build/C/man2/io_getevents.2:23 build/C/man2/io_setup.2:23
35 #: build/C/man2/io_submit.2:23
36 #, no-wrap
37 msgid "Linux"
38 msgstr "Linux"
39
40 #. type: TH
41 #: build/C/man7/aio.7:24 build/C/man3/aio_cancel.3:23
42 #: build/C/man3/aio_error.3:23 build/C/man3/aio_fsync.3:23
43 #: build/C/man3/aio_init.3:24 build/C/man3/aio_read.3:23
44 #: build/C/man3/aio_return.3:23 build/C/man3/aio_suspend.3:24
45 #: build/C/man3/aio_write.3:23 build/C/man2/io_cancel.2:23
46 #: build/C/man2/io_destroy.2:23 build/C/man2/io_getevents.2:23
47 #: build/C/man2/io_setup.2:23 build/C/man2/io_submit.2:23
48 #: build/C/man3/lio_listio.3:23
49 #, no-wrap
50 msgid "Linux Programmer's Manual"
51 msgstr "Linux Programmer's Manual"
52
53 #. type: SH
54 #: build/C/man7/aio.7:25 build/C/man3/aio_cancel.3:24
55 #: build/C/man3/aio_error.3:24 build/C/man3/aio_fsync.3:24
56 #: build/C/man3/aio_init.3:25 build/C/man3/aio_read.3:24
57 #: build/C/man3/aio_return.3:24 build/C/man3/aio_suspend.3:25
58 #: build/C/man3/aio_write.3:24 build/C/man2/io_cancel.2:24
59 #: build/C/man2/io_destroy.2:24 build/C/man2/io_getevents.2:24
60 #: build/C/man2/io_setup.2:24 build/C/man2/io_submit.2:24
61 #: build/C/man3/lio_listio.3:24
62 #, no-wrap
63 msgid "NAME"
64 msgstr "名前"
65
66 #. type: Plain text
67 #: build/C/man7/aio.7:27
68 msgid "aio - POSIX asynchronous I/O overview"
69 msgstr "aio - POSIX 非同期 I/O の概要"
70
71 #. type: SH
72 #: build/C/man7/aio.7:27 build/C/man3/aio_cancel.3:32
73 #: build/C/man3/aio_error.3:32 build/C/man3/aio_fsync.3:32
74 #: build/C/man3/aio_init.3:36 build/C/man3/aio_read.3:32
75 #: build/C/man3/aio_return.3:32 build/C/man3/aio_suspend.3:38
76 #: build/C/man3/aio_write.3:32 build/C/man2/io_cancel.2:42
77 #: build/C/man2/io_destroy.2:40 build/C/man2/io_getevents.2:43
78 #: build/C/man2/io_setup.2:40 build/C/man2/io_submit.2:41
79 #: build/C/man3/lio_listio.3:35
80 #, no-wrap
81 msgid "DESCRIPTION"
82 msgstr "説明"
83
84 #. type: Plain text
85 #: build/C/man7/aio.7:35
86 msgid ""
87 "The POSIX asynchronous I/O (AIO) interface allows applications to initiate "
88 "one or more I/O operations that are performed asynchronously (i.e., in the "
89 "background).  The application can elect to be notified of completion of the "
90 "I/O operation in a variety of ways: by delivery of a signal, by "
91 "instantiation of a thread, or no notification at all."
92 msgstr ""
93 "POSIX 非同期 (AIO) インターフェースを使うと、アプリケーションは、非同期\n"
94 "に (つまり、バックグラウンドで) 実行されるI/O 操作を一つ以上発行できる\n"
95 "ようになる。アプリケーションは I/O 操作の完了の通知方法を選択することが\n"
96 "できる。選択できる通知方法は、シグナルの配送、スレッドの起動、通知を行\n"
97 "わないである。"
98
99 #. type: Plain text
100 #: build/C/man7/aio.7:37
101 msgid "The POSIX AIO interface consists of the following functions:"
102 msgstr "POSIX AIO インターフェースは以下の関数で構成されている。"
103
104 #. type: TP
105 #: build/C/man7/aio.7:37
106 #, no-wrap
107 msgid "B<aio_read>(3)"
108 msgstr "B<aio_read>(3)"
109
110 #. type: Plain text
111 #: build/C/man7/aio.7:42
112 msgid "Enqueue a read request.  This is the asynchronous analog of B<read>(2)."
113 msgstr ""
114 "読み出しリクエストをキューに入れる。\n"
115 "B<read>(2) の非同期版である。"
116
117 #. type: TP
118 #: build/C/man7/aio.7:42
119 #, no-wrap
120 msgid "B<aio_write>(3)"
121 msgstr "B<aio_write>(3)"
122
123 #. type: Plain text
124 #: build/C/man7/aio.7:47
125 msgid ""
126 "Enqueue a write request.  This is the asynchronous analog of B<write>(2)."
127 msgstr ""
128 "書き込みリクエストをキューに入れる。\n"
129 "B<write>(2) の非同期版である。"
130
131 #. type: TP
132 #: build/C/man7/aio.7:47
133 #, no-wrap
134 msgid "B<aio_fsync>(3)"
135 msgstr "B<aio_fsync>(3)"
136
137 #. type: Plain text
138 #: build/C/man7/aio.7:54
139 msgid ""
140 "Enqueue a sync request for the I/O operations on a file descriptor.  This is "
141 "the asynchronous analog of B<fsync>(2)  and B<fdatasync>(2)."
142 msgstr ""
143 "ファイルディスクリプタに対して行われた I/O 操作の\n"
144 "同期 (sync) リクエストをキューに入れる。\n"
145 "B<fsync>(2) や B<fdatasync>(2) の非同期版である。"
146
147 #. type: TP
148 #: build/C/man7/aio.7:54
149 #, no-wrap
150 msgid "B<aio_error>(3)"
151 msgstr "B<aio_error>(3)"
152
153 #. type: Plain text
154 #: build/C/man7/aio.7:57
155 msgid "Obtain the error status of an enqueued I/O request."
156 msgstr "キューに入れられた I/O リクエストのエラー状態を取得する。"
157
158 #. type: TP
159 #: build/C/man7/aio.7:57
160 #, no-wrap
161 msgid "B<aio_return>(3)"
162 msgstr "B<aio_return>(3)"
163
164 #. type: Plain text
165 #: build/C/man7/aio.7:60
166 msgid "Obtain the return status of a completed I/O request."
167 msgstr "完了した I/O リクエストの終了ステータスを取得する。"
168
169 #. type: TP
170 #: build/C/man7/aio.7:60
171 #, no-wrap
172 msgid "B<aio_suspend>(3)"
173 msgstr "B<aio_suspend>(3)"
174
175 #. type: Plain text
176 #: build/C/man7/aio.7:64
177 msgid ""
178 "Suspend the caller until one or more of a specified set of I/O requests "
179 "completes."
180 msgstr ""
181 "指定された I/O リクエストの集合 (要素は一つ以上) が完了するまで、\n"
182 "呼び出し側の実行を停止 (suspend) する。"
183
184 #. type: TP
185 #: build/C/man7/aio.7:64
186 #, no-wrap
187 msgid "B<aio_cancel>(3)"
188 msgstr "B<aio_cancel>(3)"
189
190 #. type: Plain text
191 #: build/C/man7/aio.7:68
192 msgid ""
193 "Attempt to cancel outstanding I/O requests on a specified file descriptor."
194 msgstr ""
195 "指定されたファイルディスクリプタに関する\n"
196 "完了していない I/O リクエストのキャンセルを試みる。"
197
198 #. type: TP
199 #: build/C/man7/aio.7:68
200 #, no-wrap
201 msgid "B<lio_listio>(3)"
202 msgstr "B<lio_listio>(3)"
203
204 #. type: Plain text
205 #: build/C/man7/aio.7:71
206 msgid "Enqueue multiple I/O requests using a single function call."
207 msgstr "一回の関数呼び出しで複数の I/O リクエストをキューに入れる。"
208
209 #. type: Plain text
210 #: build/C/man7/aio.7:78
211 msgid ""
212 "The I<aiocb> (\"asynchronous I/O control block\") structure defines "
213 "parameters that control an I/O operation.  An argument of this type is "
214 "employed with all of the functions listed above.  This structure has the "
215 "following form:"
216 msgstr ""
217 "I<aiocb> (\"非同期 I/O 制御ブロック (asynchronous I/O control block)\")\n"
218 "構造体は、I/O 操作を制御するパラメータを定義する。この型の引き数は上記\n"
219 "の全ての関数で使用されている。この構造体は以下の通りである。"
220
221 #. type: Plain text
222 #: build/C/man7/aio.7:82
223 #, no-wrap
224 msgid "#include E<lt>aiocb.hE<gt>\n"
225 msgstr "#include E<lt>aiocb.hE<gt>\n"
226
227 #. type: Plain text
228 #: build/C/man7/aio.7:85
229 #, no-wrap
230 msgid ""
231 "struct aiocb {\n"
232 "    /* The order of these fields is implementation-dependent */\n"
233 msgstr ""
234 "struct aiocb {\n"
235 "    /* The order of these fields is implementation-dependent */\n"
236
237 #. type: Plain text
238 #: build/C/man7/aio.7:94
239 #, no-wrap
240 msgid ""
241 "    int             aio_fildes;     /* File descriptor */\n"
242 "    off_t           aio_offset;     /* File offset */\n"
243 "    volatile void  *aio_buf;        /* Location of buffer */\n"
244 "    size_t          aio_nbytes;     /* Length of transfer */\n"
245 "    int             aio_reqprio;    /* Request priority */\n"
246 "    struct sigevent aio_sigevent;   /* Notification method */\n"
247 "    int             aio_lio_opcode; /* Operation to be performed;\n"
248 "                                       lio_listio() only */\n"
249 msgstr ""
250 "    int             aio_fildes;     /* File descriptor */\n"
251 "    off_t           aio_offset;     /* File offset */\n"
252 "    volatile void  *aio_buf;        /* Location of buffer */\n"
253 "    size_t          aio_nbytes;     /* Length of transfer */\n"
254 "    int             aio_reqprio;    /* Request priority */\n"
255 "    struct sigevent aio_sigevent;   /* Notification method */\n"
256 "    int             aio_lio_opcode; /* Operation to be performed;\n"
257 "                                       lio_listio() only */\n"
258
259 #. type: Plain text
260 #: build/C/man7/aio.7:97
261 #, no-wrap
262 msgid ""
263 "    /* Various implementation-internal fields not shown */\n"
264 "};\n"
265 msgstr ""
266 "    /* Various implementation-internal fields not shown */\n"
267 "};\n"
268
269 #. type: Plain text
270 #: build/C/man7/aio.7:99
271 #, no-wrap
272 msgid "/* Operation codes for \\(aqaio_lio_opcode\\(aq: */\n"
273 msgstr "/* Operation codes for \\(aqaio_lio_opcode\\(aq: */\n"
274
275 #. type: Plain text
276 #: build/C/man7/aio.7:101
277 #, no-wrap
278 msgid "enum { LIO_READ, LIO_WRITE, LIO_NOP };\n"
279 msgstr "enum { LIO_READ, LIO_WRITE, LIO_NOP };\n"
280
281 #. type: Plain text
282 #: build/C/man7/aio.7:105
283 msgid "The fields of this structure are as follows:"
284 msgstr "この構造体のフィールドは以下の通りである。"
285
286 #. type: TP
287 #: build/C/man7/aio.7:105
288 #, no-wrap
289 msgid "I<aio_filedes>"
290 msgstr "I<aio_filedes>"
291
292 #. type: Plain text
293 #: build/C/man7/aio.7:108
294 msgid "The file descriptor on which the I/O operation is to be performed."
295 msgstr "I/O 操作の実行対象となるファイルディスクリプタ。"
296
297 #. type: TP
298 #: build/C/man7/aio.7:108
299 #, no-wrap
300 msgid "I<aio_offset>"
301 msgstr "I<aio_offset>"
302
303 #. type: Plain text
304 #: build/C/man7/aio.7:111
305 msgid "This is the file offset at which the I/O operation is to be performed."
306 msgstr "I/O 操作を行うファイルオフセットを示す。"
307
308 #. type: TP
309 #: build/C/man7/aio.7:111
310 #, no-wrap
311 msgid "I<aio_buf>"
312 msgstr "I<aio_buf>"
313
314 #. type: Plain text
315 #: build/C/man7/aio.7:114
316 msgid "This is the buffer used to transfer data for a read or write operation."
317 msgstr "読み出し操作、書き込み操作でデータ転送に使用されるバッファ。"
318
319 #. type: TP
320 #: build/C/man7/aio.7:114
321 #, no-wrap
322 msgid "I<aio_nbytes>"
323 msgstr "I<aio_nbytes>"
324
325 #. type: Plain text
326 #: build/C/man7/aio.7:118
327 msgid "This is the size of the buffer pointed to by I<aio_buf>."
328 msgstr "I<aio_buf> が指すバッファのサイズ。"
329
330 #. type: TP
331 #: build/C/man7/aio.7:118
332 #, no-wrap
333 msgid "I<aio_reqprio>"
334 msgstr "I<aio_reqprio>"
335
336 #. type: Plain text
337 #: build/C/man7/aio.7:127
338 msgid ""
339 "This field specifies a value that is subtracted from the calling thread's "
340 "real-time priority in order to determine the priority for execution of this "
341 "I/O request (see B<pthread_setschedparam>(3)).  The specified value must be "
342 "between 0 and the value returned by I<sysconf(_SC_AIO_PRIO_DELTA_MAX)>.  "
343 "This field is ignored for file synchronization operations."
344 msgstr ""
345 "このフィールドでは、呼び出したスレッドのリアルタイム優先度から\n"
346 "減算する値を指定する。この I/O リクエストの実行の優先度を\n"
347 "決定するために使用される (B<pthread_setschedparam>(3) 参照)。\n"
348 "指定する値は 0 と I<sysconf(_SC_AIO_PRIO_DELTA_MAX)> が返す値の間で\n"
349 "なければならない。このフィールドは、ファイル同期操作では無視される。"
350
351 #. type: TP
352 #: build/C/man7/aio.7:127
353 #, no-wrap
354 msgid "I<aio_sigevent>"
355 msgstr "I<aio_sigevent>"
356
357 #. type: Plain text
358 #: build/C/man7/aio.7:141
359 msgid ""
360 "This field is a structure that specifies how the caller is to be notified "
361 "when the asynchronous I/O operation completes.  Possible values for "
362 "I<aio_sigevent.sigev_notify> are B<SIGEV_NONE>, B<SIGEV_SIGNAL>, and "
363 "B<SIGEV_THREAD>.  See B<sigevent>(7)  for further details."
364 msgstr ""
365 "このフィールドは、非同期 I/O 操作が完了した際に呼び出し側に\n"
366 "どのように通知を行うかを指定する構造体である。\n"
367 "I<aio_sigevent.sigev_notify> に指定できる値は、\n"
368 "B<SIGEV_NONE>, B<SIGEV_SIGNAL>, B<SIGEV_THREAD> である。\n"
369 "詳細は B<sigevent>(7) を参照。"
370
371 #. type: TP
372 #: build/C/man7/aio.7:141
373 #, no-wrap
374 msgid "I<aio_lio_opcode>"
375 msgstr "I<aio_lio_opcode>"
376
377 #. type: Plain text
378 #: build/C/man7/aio.7:145
379 msgid "The type of operation to be performed; used only for B<lio_listio>(3)."
380 msgstr ""
381 "実行される操作の種別。\n"
382 "B<lio_listio>(3) でのみ使用される。"
383
384 #. type: Plain text
385 #: build/C/man7/aio.7:148
386 msgid ""
387 "In addition to the standard functions listed above, the GNU C library "
388 "provides the following extension to the POSIX AIO API:"
389 msgstr ""
390 "上記のリストにある標準の関数に加えて、GNU C ライブラリでは\n"
391 "以下に示す POSIX AIO API に対する拡張が提供されている。"
392
393 #. type: TP
394 #: build/C/man7/aio.7:148
395 #, no-wrap
396 msgid "B<aio_init>(3)"
397 msgstr "B<aio_init>(3)"
398
399 #. type: Plain text
400 #: build/C/man7/aio.7:151
401 msgid ""
402 "Set parameters for tuning the behavior of the glibc POSIX AIO implementation."
403 msgstr "glibc の POSIX AIO 実装の動作を調整するパラメータを設定する。"
404
405 #. type: SH
406 #: build/C/man7/aio.7:151 build/C/man3/aio_read.3:132
407 #: build/C/man3/aio_suspend.3:104 build/C/man3/aio_write.3:137
408 #: build/C/man2/io_cancel.2:78 build/C/man2/io_destroy.2:72
409 #: build/C/man2/io_getevents.2:85 build/C/man2/io_setup.2:81
410 #: build/C/man2/io_submit.2:83 build/C/man3/lio_listio.3:206
411 #, no-wrap
412 msgid "NOTES"
413 msgstr "注意"
414
415 #. type: Plain text
416 #: build/C/man7/aio.7:158
417 msgid ""
418 "It is a good idea to zero out the control block buffer before use (see "
419 "B<memset>(3)).  The control block buffer and the buffer pointed to by "
420 "I<aio_buf> must not be changed while the I/O operation is in progress.  "
421 "These buffers must remain valid until the I/O operation completes."
422 msgstr ""
423 "使用前に制御ブロックバッファを 0 で埋めるのはよい考えである\n"
424 "(B<memset>(3) 参照)。I/O 操作が実行中の間は、制御ブロックバッファと\n"
425 "I<aio_buf> が指すバッファを変更してはならない。I/O 操作が完了するまで、\n"
426 "これらのバッファは有効な状態に保たなければならない。"
427
428 #. type: Plain text
429 #: build/C/man7/aio.7:162
430 msgid ""
431 "Simultaneous asynchronous read or write operations using the same I<aiocb> "
432 "structure yield undefined results."
433 msgstr ""
434 "同じ I<aiocb> 構造体を使って、同時に複数の非同期の読み出し操作や\n"
435 "書き込み操作を行った場合に、どのような結果になるかは未定義である。"
436
437 #.  http://lse.sourceforge.net/io/aio.html
438 #.  http://lse.sourceforge.net/io/aionotes.txt
439 #.  http://lwn.net/Articles/148755/
440 #. type: Plain text
441 #: build/C/man7/aio.7:180
442 msgid ""
443 "The current Linux POSIX AIO implementation is provided in userspace by "
444 "glibc.  This has a number of limitations, most notably that maintaining "
445 "multiple threads to perform I/O operations is expensive and scales poorly.  "
446 "Work has been in progress for some time on a kernel state-machine-based "
447 "implementation of asynchronous I/O (see B<io_submit>(2), B<io_setup>(2), "
448 "B<io_cancel>(2), B<io_destroy>(2), B<io_getevents>(2)), but this "
449 "implementation hasn't yet matured to the point where the POSIX AIO "
450 "implementation can be completely reimplemented using the kernel system calls."
451 msgstr ""
452 "現在の Linux では、POSIX AIO 実装は glibc によりユーザ空間で提供\n"
453 "されている。このため、制限がいくつかあり、最も顕著なものは、I/O 操作を\n"
454 "実行する複数のスレッドの管理コストが高く、スケーラビリティに欠けること\n"
455 "である。しばらくの間、カーネルのステートマシンによる非同期 I/O の実装\n"
456 "の作業が行われているが (B<io_submit>(2), B<io_setup>(2), \n"
457 "B<io_cancel>(2), B<io_destroy>(2), B<io_getevents>(2) 参照)、\n"
458 "この実装はまだ POSIX AIO 実装をカーネルシステムコールにより\n"
459 "再実装するほど成熟したものてはない。"
460
461 #. type: SH
462 #: build/C/man7/aio.7:180 build/C/man3/aio_cancel.3:90
463 #: build/C/man3/aio_error.3:65 build/C/man3/aio_fsync.3:78
464 #: build/C/man3/aio_read.3:102 build/C/man3/aio_return.3:62
465 #: build/C/man3/aio_suspend.3:87 build/C/man3/aio_write.3:109
466 #: build/C/man2/io_cancel.2:56 build/C/man2/io_destroy.2:53
467 #: build/C/man2/io_getevents.2:60 build/C/man2/io_setup.2:54
468 #: build/C/man2/io_submit.2:54 build/C/man3/lio_listio.3:145
469 #, no-wrap
470 msgid "ERRORS"
471 msgstr "エラー"
472
473 #. type: TP
474 #: build/C/man7/aio.7:181 build/C/man3/aio_error.3:66
475 #: build/C/man3/aio_fsync.3:86 build/C/man3/aio_read.3:110
476 #: build/C/man3/aio_return.3:63 build/C/man3/aio_write.3:121
477 #: build/C/man2/io_cancel.2:63 build/C/man2/io_destroy.2:57
478 #: build/C/man2/io_getevents.2:64 build/C/man2/io_setup.2:61
479 #: build/C/man2/io_submit.2:64 build/C/man3/lio_listio.3:160
480 #, no-wrap
481 msgid "B<EINVAL>"
482 msgstr "B<EINVAL>"
483
484 #. type: Plain text
485 #: build/C/man7/aio.7:190
486 msgid ""
487 "The I<aio_reqprio> field of the I<aiocb> structure was less than 0, or was "
488 "greater than the limit returned by the call I<sysconf(_SC_AIO_PRIO_DELTA_MAX)"
489 ">."
490 msgstr ""
491 "I<aiocb> 構造体の I<aio_reqprio> フィールドが、0 より小さいか、\n"
492 "I<sysconf(_SC_AIO_PRIO_DELTA_MAX)> が返す上限よりも大きかった。"
493
494 #. type: SH
495 #: build/C/man7/aio.7:190 build/C/man3/aio_cancel.3:95
496 #: build/C/man3/aio_error.3:73 build/C/man3/aio_fsync.3:94
497 #: build/C/man3/aio_init.3:91 build/C/man3/aio_read.3:126
498 #: build/C/man3/aio_return.3:68 build/C/man3/aio_suspend.3:98
499 #: build/C/man3/aio_write.3:131 build/C/man2/io_cancel.2:70
500 #: build/C/man2/io_destroy.2:64 build/C/man2/io_getevents.2:77
501 #: build/C/man2/io_setup.2:73 build/C/man2/io_submit.2:75
502 #: build/C/man3/lio_listio.3:200
503 #, no-wrap
504 msgid "VERSIONS"
505 msgstr "バージョン"
506
507 #. type: Plain text
508 #: build/C/man7/aio.7:192
509 msgid "The POSIX AIO interfaces are provided by glibc since version 2.1."
510 msgstr ""
511 "POSIX AIO インターフェイスは glibc バージョン 2.1 以降で提供されている。"
512
513 #. type: SH
514 #: build/C/man7/aio.7:192 build/C/man3/aio_cancel.3:99
515 #: build/C/man3/aio_error.3:77 build/C/man3/aio_fsync.3:98
516 #: build/C/man3/aio_init.3:95 build/C/man3/aio_read.3:130
517 #: build/C/man3/aio_return.3:72 build/C/man3/aio_suspend.3:102
518 #: build/C/man3/aio_write.3:135 build/C/man2/io_cancel.2:73
519 #: build/C/man2/io_destroy.2:67 build/C/man2/io_getevents.2:80
520 #: build/C/man2/io_setup.2:76 build/C/man2/io_submit.2:78
521 #: build/C/man3/lio_listio.3:204
522 #, no-wrap
523 msgid "CONFORMING TO"
524 msgstr "準拠"
525
526 #. type: Plain text
527 #: build/C/man7/aio.7:194 build/C/man3/aio_cancel.3:101
528 #: build/C/man3/aio_error.3:79 build/C/man3/aio_fsync.3:100
529 #: build/C/man3/aio_read.3:132 build/C/man3/aio_return.3:74
530 #: build/C/man3/aio_suspend.3:104 build/C/man3/aio_write.3:137
531 #: build/C/man3/lio_listio.3:206
532 msgid "POSIX.1-2001, POSIX.1-2008."
533 msgstr "POSIX.1-2001, POSIX.1-2008."
534
535 #. type: SH
536 #: build/C/man7/aio.7:194 build/C/man3/aio_cancel.3:101
537 #: build/C/man3/aio_error.3:79 build/C/man3/aio_read.3:144
538 #: build/C/man3/aio_return.3:74
539 #, no-wrap
540 msgid "EXAMPLE"
541 msgstr "例"
542
543 #. type: Plain text
544 #: build/C/man7/aio.7:207
545 msgid ""
546 "The program below opens each of the files named in its command-line "
547 "arguments and queues a request on the resulting file descriptor using "
548 "B<aio_read>(3).  The program then loops, periodically monitoring each of the "
549 "I/O operations that is still in progress using B<aio_error>(3).  Each of the "
550 "I/O requests is set up to provide notification by delivery of a signal.  "
551 "After all I/O requests have completed, the program retrieves their status "
552 "using B<aio_return>(3)."
553 msgstr ""
554 "下記のプログラムは、コマンドライン引き数で指定された名前のファイルを\n"
555 "それぞれオープンし、得られたファイルディスクリプタに対するリクエストを\n"
556 "B<aio_read>(3) を使ってキューに入れる。その後、このプログラムはループに\n"
557 "入り、定期的に B<aio_error>(3) を使ってまだ実行中の各 I/O 操作を監視す\n"
558 "る。各 I/O リクエストは、シグナルの配送による完了通知が行われるように設\n"
559 "定される。全ての I/O リクエストが完了した後、B<aio_return>(3) を使って\n"
560 "それぞれのステータスを取得する。"
561
562 #. type: Plain text
563 #: build/C/man7/aio.7:213
564 msgid ""
565 "The B<SIGQUIT> signal (generated by typing control-\\e) causes the program "
566 "to request cancellation of each of the outstanding requests using "
567 "B<aio_cancel>(3)."
568 msgstr ""
569 "B<SIGQUIT> シグナル (control-\\e をタイプすると生成できる) を送ると、\n"
570 "このプログラムは B<aio_cancel>(3) を使って\n"
571 "完了していない各リクエストにキャンセル要求を送る。"
572
573 #. type: Plain text
574 #: build/C/man7/aio.7:218
575 msgid ""
576 "Here is an example of what we might see when running this program.  In this "
577 "example, the program queues two requests to standard input, and these are "
578 "satisfied by two lines of input containing \"abc\" and \"x\"."
579 msgstr ""
580 "以下はこのプログラムを実行した際の出力例である。\n"
581 "この例では、標準入力に対して 2 つのリクエストを行い、\n"
582 "\"abc\" と \"x\" という 2 行の入力を行っている。"
583
584 #. type: Plain text
585 #: build/C/man7/aio.7:242
586 #, no-wrap
587 msgid ""
588 "$ B<./a.out /dev/stdin /dev/stdin>\n"
589 "opened /dev/stdin on descriptor 3\n"
590 "opened /dev/stdin on descriptor 4\n"
591 "aio_error():\n"
592 "    for request 0 (descriptor 3): In progress\n"
593 "    for request 1 (descriptor 4): In progress\n"
594 "B<abc>\n"
595 "I/O completion signal received\n"
596 "aio_error():\n"
597 "    for request 0 (descriptor 3): I/O succeeded\n"
598 "    for request 1 (descriptor 4): In progress\n"
599 "aio_error():\n"
600 "    for request 1 (descriptor 4): In progress\n"
601 "B<x>\n"
602 "I/O completion signal received\n"
603 "aio_error():\n"
604 "    for request 1 (descriptor 4): I/O succeeded\n"
605 "All I/O requests completed\n"
606 "aio_return():\n"
607 "    for request 0 (descriptor 3): 4\n"
608 "    for request 1 (descriptor 4): 2\n"
609 msgstr ""
610 "$ B<./a.out /dev/stdin /dev/stdin>\n"
611 "opened /dev/stdin on descriptor 3\n"
612 "opened /dev/stdin on descriptor 4\n"
613 "aio_error():\n"
614 "    for request 0 (descriptor 3): In progress\n"
615 "    for request 1 (descriptor 4): In progress\n"
616 "B<abc>\n"
617 "I/O completion signal received\n"
618 "aio_error():\n"
619 "    for request 0 (descriptor 3): I/O succeeded\n"
620 "    for request 1 (descriptor 4): In progress\n"
621 "aio_error():\n"
622 "    for request 1 (descriptor 4): In progress\n"
623 "B<x>\n"
624 "I/O completion signal received\n"
625 "aio_error():\n"
626 "    for request 1 (descriptor 4): I/O succeeded\n"
627 "All I/O requests completed\n"
628 "aio_return():\n"
629 "    for request 0 (descriptor 3): 4\n"
630 "    for request 1 (descriptor 4): 2\n"
631
632 #. type: SS
633 #: build/C/man7/aio.7:244
634 #, no-wrap
635 msgid "Program source"
636 msgstr "プログラムのソース"
637
638 #. type: Plain text
639 #: build/C/man7/aio.7:253
640 #, no-wrap
641 msgid ""
642 "#include E<lt>stdlib.hE<gt>\n"
643 "#include E<lt>unistd.hE<gt>\n"
644 "#include E<lt>stdio.hE<gt>\n"
645 "#include E<lt>errno.hE<gt>\n"
646 "#include E<lt>aio.hE<gt>\n"
647 "#include E<lt>signal.hE<gt>\n"
648 msgstr ""
649 "#include E<lt>stdlib.hE<gt>\n"
650 "#include E<lt>unistd.hE<gt>\n"
651 "#include E<lt>stdio.hE<gt>\n"
652 "#include E<lt>errno.hE<gt>\n"
653 "#include E<lt>aio.hE<gt>\n"
654 "#include E<lt>signal.hE<gt>\n"
655
656 #. type: Plain text
657 #: build/C/man7/aio.7:255
658 #, no-wrap
659 msgid "#define BUF_SIZE 20     /* Size of buffers for read operations */\n"
660 msgstr "#define BUF_SIZE 20     /* Size of buffers for read operations */\n"
661
662 #. type: Plain text
663 #: build/C/man7/aio.7:257
664 #, no-wrap
665 msgid "#define errExit(msg) do { perror(msg); exit(EXIT_FAILURE); } while (0)\n"
666 msgstr "#define errExit(msg) do { perror(msg); exit(EXIT_FAILURE); } while (0)\n"
667
668 #. type: Plain text
669 #: build/C/man7/aio.7:259
670 #, no-wrap
671 msgid "#define errMsg(msg)  do { perror(msg); } while (0)\n"
672 msgstr "#define errMsg(msg)  do { perror(msg); } while (0)\n"
673
674 #. type: Plain text
675 #: build/C/man7/aio.7:266
676 #, no-wrap
677 msgid ""
678 "struct ioRequest {      /* Application-defined structure for tracking\n"
679 "                           I/O requests */\n"
680 "    int           reqNum;\n"
681 "    int           status;\n"
682 "    struct aiocb *aiocbp;\n"
683 "};\n"
684 msgstr ""
685 "struct ioRequest {      /* Application-defined structure for tracking\n"
686 "                           I/O requests */\n"
687 "    int           reqNum;\n"
688 "    int           status;\n"
689 "    struct aiocb *aiocbp;\n"
690 "};\n"
691
692 #. type: Plain text
693 #: build/C/man7/aio.7:270
694 #, no-wrap
695 msgid ""
696 "static volatile sig_atomic_t gotSIGQUIT = 0;\n"
697 "                        /* On delivery of SIGQUIT, we attempt to\n"
698 "                           cancel all outstanding I/O requests */\n"
699 msgstr ""
700 "static volatile sig_atomic_t gotSIGQUIT = 0;\n"
701 "                        /* On delivery of SIGQUIT, we attempt to\n"
702 "                           cancel all outstanding I/O requests */\n"
703
704 #. type: Plain text
705 #: build/C/man7/aio.7:276
706 #, no-wrap
707 msgid ""
708 "static void             /* Handler for SIGQUIT */\n"
709 "quitHandler(int sig)\n"
710 "{\n"
711 "    gotSIGQUIT = 1;\n"
712 "}\n"
713 msgstr ""
714 "static void             /* Handler for SIGQUIT */\n"
715 "quitHandler(int sig)\n"
716 "{\n"
717 "    gotSIGQUIT = 1;\n"
718 "}\n"
719
720 #. type: Plain text
721 #: build/C/man7/aio.7:278
722 #, no-wrap
723 msgid "#define IO_SIGNAL SIGUSR1   /* Signal used to notify I/O completion */\n"
724 msgstr "#define IO_SIGNAL SIGUSR1   /* Signal used to notify I/O completion */\n"
725
726 #. type: Plain text
727 #: build/C/man7/aio.7:283
728 #, no-wrap
729 msgid ""
730 "static void                 /* Handler for I/O completion signal */\n"
731 "aioSigHandler(int sig, siginfo_t *si, void *ucontext)\n"
732 "{\n"
733 "    write(STDOUT_FILENO, \"I/O completion signal received\\en\", 31);\n"
734 msgstr ""
735 "static void                 /* Handler for I/O completion signal */\n"
736 "aioSigHandler(int sig, siginfo_t *si, void *ucontext)\n"
737 "{\n"
738 "    write(STDOUT_FILENO, \"I/O completion signal received\\en\", 31);\n"
739
740 #. type: Plain text
741 #: build/C/man7/aio.7:289
742 #, no-wrap
743 msgid ""
744 "    /* The corresponding ioRequest structure would be available as\n"
745 "           struct ioRequest *ioReq = si-E<gt>si_value.sival_ptr;\n"
746 "       and the file descriptor would then be available via\n"
747 "           ioReq-E<gt>aiocbp-E<gt>aio_fildes */\n"
748 "}\n"
749 msgstr ""
750 "    /* The corresponding ioRequest structure would be available as\n"
751 "           struct ioRequest *ioReq = si-E<gt>si_value.sival_ptr;\n"
752 "       and the file descriptor would then be available via\n"
753 "           ioReq-E<gt>aiocbp-E<gt>aio_fildes */\n"
754 "}\n"
755
756 #. type: Plain text
757 #: build/C/man7/aio.7:299
758 #, no-wrap
759 msgid ""
760 "int\n"
761 "main(int argc, char *argv[])\n"
762 "{\n"
763 "    struct ioRequest *ioList;\n"
764 "    struct aiocb *aiocbList;\n"
765 "    struct sigaction sa;\n"
766 "    int s, j;\n"
767 "    int numReqs;        /* Total number of queued I/O requests */\n"
768 "    int openReqs;       /* Number of I/O requests still in progress */\n"
769 msgstr ""
770 "int\n"
771 "main(int argc, char *argv[])\n"
772 "{\n"
773 "    struct ioRequest *ioList;\n"
774 "    struct aiocb *aiocbList;\n"
775 "    struct sigaction sa;\n"
776 "    int s, j;\n"
777 "    int numReqs;        /* Total number of queued I/O requests */\n"
778 "    int openReqs;       /* Number of I/O requests still in progress */\n"
779
780 #. type: Plain text
781 #: build/C/man7/aio.7:305
782 #, no-wrap
783 msgid ""
784 "    if (argc E<lt> 2) {\n"
785 "        fprintf(stderr, \"Usage: %s E<lt>pathnameE<gt> E<lt>pathnameE<gt>...\\en\",\n"
786 "                argv[0]);\n"
787 "        exit(EXIT_FAILURE);\n"
788 "    }\n"
789 msgstr ""
790 "    if (argc E<lt> 2) {\n"
791 "        fprintf(stderr, \"Usage: %s E<lt>pathnameE<gt> E<lt>pathnameE<gt>...\\en\",\n"
792 "                argv[0]);\n"
793 "        exit(EXIT_FAILURE);\n"
794 "    }\n"
795
796 #. type: Plain text
797 #: build/C/man7/aio.7:307
798 #, no-wrap
799 msgid "    numReqs = argc - 1;\n"
800 msgstr "    numReqs = argc - 1;\n"
801
802 #. type: Plain text
803 #: build/C/man7/aio.7:309
804 #, no-wrap
805 msgid "    /* Allocate our arrays */\n"
806 msgstr "    /* Allocate our arrays */\n"
807
808 #. type: Plain text
809 #: build/C/man7/aio.7:313
810 #, no-wrap
811 msgid ""
812 "    ioList = calloc(numReqs, sizeof(struct ioRequest));\n"
813 "    if (ioList == NULL)\n"
814 "        errExit(\"calloc\");\n"
815 msgstr ""
816 "    ioList = calloc(numReqs, sizeof(struct ioRequest));\n"
817 "    if (ioList == NULL)\n"
818 "        errExit(\"calloc\");\n"
819
820 #. type: Plain text
821 #: build/C/man7/aio.7:317
822 #, no-wrap
823 msgid ""
824 "    aiocbList = calloc(numReqs, sizeof(struct aiocb));\n"
825 "    if (aiocbList == NULL)\n"
826 "        errExit(\"calloc\");\n"
827 msgstr ""
828 "    aiocbList = calloc(numReqs, sizeof(struct aiocb));\n"
829 "    if (aiocbList == NULL)\n"
830 "        errExit(\"calloc\");\n"
831
832 #. type: Plain text
833 #: build/C/man7/aio.7:319
834 #, no-wrap
835 msgid "    /* Establish handlers for SIGQUIT and the I/O completion signal */\n"
836 msgstr "    /* Establish handlers for SIGQUIT and the I/O completion signal */\n"
837
838 #. type: Plain text
839 #: build/C/man7/aio.7:322
840 #, no-wrap
841 msgid ""
842 "    sa.sa_flags = SA_RESTART;\n"
843 "    sigemptyset(&sa.sa_mask);\n"
844 msgstr ""
845 "    sa.sa_flags = SA_RESTART;\n"
846 "    sigemptyset(&sa.sa_mask);\n"
847
848 #. type: Plain text
849 #: build/C/man7/aio.7:326
850 #, no-wrap
851 msgid ""
852 "    sa.sa_handler = quitHandler;\n"
853 "    if (sigaction(SIGQUIT, &sa, NULL) == -1)\n"
854 "        errExit(\"sigaction\");\n"
855 msgstr ""
856 "    sa.sa_handler = quitHandler;\n"
857 "    if (sigaction(SIGQUIT, &sa, NULL) == -1)\n"
858 "        errExit(\"sigaction\");\n"
859
860 #. type: Plain text
861 #: build/C/man7/aio.7:331
862 #, no-wrap
863 msgid ""
864 "    sa.sa_flags = SA_RESTART | SA_SIGINFO;\n"
865 "    sa.sa_sigaction = aioSigHandler;\n"
866 "    if (sigaction(IO_SIGNAL, &sa, NULL) == -1)\n"
867 "        errExit(\"sigaction\");\n"
868 msgstr ""
869 "    sa.sa_flags = SA_RESTART | SA_SIGINFO;\n"
870 "    sa.sa_sigaction = aioSigHandler;\n"
871 "    if (sigaction(IO_SIGNAL, &sa, NULL) == -1)\n"
872 "        errExit(\"sigaction\");\n"
873
874 #. type: Plain text
875 #: build/C/man7/aio.7:334
876 #, no-wrap
877 msgid ""
878 "    /* Open each file specified on the command line, and queue\n"
879 "       a read request on the resulting file descriptor */\n"
880 msgstr ""
881 "    /* Open each file specified on the command line, and queue\n"
882 "       a read request on the resulting file descriptor */\n"
883
884 #. type: Plain text
885 #: build/C/man7/aio.7:339
886 #, no-wrap
887 msgid ""
888 "    for (j = 0; j E<lt> numReqs; j++) {\n"
889 "        ioList[j].reqNum = j;\n"
890 "        ioList[j].status = EINPROGRESS;\n"
891 "        ioList[j].aiocbp = &aiocbList[j];\n"
892 msgstr ""
893 "    for (j = 0; j E<lt> numReqs; j++) {\n"
894 "        ioList[j].reqNum = j;\n"
895 "        ioList[j].status = EINPROGRESS;\n"
896 "        ioList[j].aiocbp = &aiocbList[j];\n"
897
898 #. type: Plain text
899 #: build/C/man7/aio.7:345
900 #, no-wrap
901 msgid ""
902 "        ioList[j].aiocbp-E<gt>aio_fildes = open(argv[j + 1], O_RDONLY);\n"
903 "        if (ioList[j].aiocbp-E<gt>aio_fildes == -1)\n"
904 "            errExit(\"open\");\n"
905 "        printf(\"opened %s on descriptor %d\\en\", argv[j + 1],\n"
906 "                ioList[j].aiocbp-E<gt>aio_fildes);\n"
907 msgstr ""
908 "        ioList[j].aiocbp-E<gt>aio_fildes = open(argv[j + 1], O_RDONLY);\n"
909 "        if (ioList[j].aiocbp-E<gt>aio_fildes == -1)\n"
910 "            errExit(\"open\");\n"
911 "        printf(\"opened %s on descriptor %d\\en\", argv[j + 1],\n"
912 "                ioList[j].aiocbp-E<gt>aio_fildes);\n"
913
914 #. type: Plain text
915 #: build/C/man7/aio.7:349
916 #, no-wrap
917 msgid ""
918 "        ioList[j].aiocbp-E<gt>aio_buf = malloc(BUF_SIZE);\n"
919 "        if (ioList[j].aiocbp-E<gt>aio_buf == NULL)\n"
920 "            errExit(\"malloc\");\n"
921 msgstr ""
922 "        ioList[j].aiocbp-E<gt>aio_buf = malloc(BUF_SIZE);\n"
923 "        if (ioList[j].aiocbp-E<gt>aio_buf == NULL)\n"
924 "            errExit(\"malloc\");\n"
925
926 #. type: Plain text
927 #: build/C/man7/aio.7:357
928 #, no-wrap
929 msgid ""
930 "        ioList[j].aiocbp-E<gt>aio_nbytes = BUF_SIZE;\n"
931 "        ioList[j].aiocbp-E<gt>aio_reqprio = 0;\n"
932 "        ioList[j].aiocbp-E<gt>aio_offset = 0;\n"
933 "        ioList[j].aiocbp-E<gt>aio_sigevent.sigev_notify = SIGEV_SIGNAL;\n"
934 "        ioList[j].aiocbp-E<gt>aio_sigevent.sigev_signo = IO_SIGNAL;\n"
935 "        ioList[j].aiocbp-E<gt>aio_sigevent.sigev_value.sival_ptr =\n"
936 "                                &ioList[j];\n"
937 msgstr ""
938 "        ioList[j].aiocbp-E<gt>aio_nbytes = BUF_SIZE;\n"
939 "        ioList[j].aiocbp-E<gt>aio_reqprio = 0;\n"
940 "        ioList[j].aiocbp-E<gt>aio_offset = 0;\n"
941 "        ioList[j].aiocbp-E<gt>aio_sigevent.sigev_notify = SIGEV_SIGNAL;\n"
942 "        ioList[j].aiocbp-E<gt>aio_sigevent.sigev_signo = IO_SIGNAL;\n"
943 "        ioList[j].aiocbp-E<gt>aio_sigevent.sigev_value.sival_ptr =\n"
944 "                                &ioList[j];\n"
945
946 #. type: Plain text
947 #: build/C/man7/aio.7:362
948 #, no-wrap
949 msgid ""
950 "        s = aio_read(ioList[j].aiocbp);\n"
951 "        if (s == -1)\n"
952 "            errExit(\"aio_read\");\n"
953 "    }\n"
954 msgstr ""
955 "        s = aio_read(ioList[j].aiocbp);\n"
956 "        if (s == -1)\n"
957 "            errExit(\"aio_read\");\n"
958 "    }\n"
959
960 #. type: Plain text
961 #: build/C/man7/aio.7:364
962 #, no-wrap
963 msgid "    openReqs = numReqs;\n"
964 msgstr "    openReqs = numReqs;\n"
965
966 #. type: Plain text
967 #: build/C/man7/aio.7:366
968 #, no-wrap
969 msgid "    /* Loop, monitoring status of I/O requests */\n"
970 msgstr "    /* Loop, monitoring status of I/O requests */\n"
971
972 #. type: Plain text
973 #: build/C/man7/aio.7:369
974 #, no-wrap
975 msgid ""
976 "    while (openReqs E<gt> 0) {\n"
977 "        sleep(3);       /* Delay between each monitoring step */\n"
978 msgstr ""
979 "    while (openReqs E<gt> 0) {\n"
980 "        sleep(3);       /* Delay between each monitoring step */\n"
981
982 #. type: Plain text
983 #: build/C/man7/aio.7:371
984 #, no-wrap
985 msgid "        if (gotSIGQUIT) {\n"
986 msgstr "        if (gotSIGQUIT) {\n"
987
988 #. type: Plain text
989 #: build/C/man7/aio.7:375
990 #, no-wrap
991 msgid ""
992 "            /* On receipt of SIGQUIT, attempt to cancel each of the\n"
993 "               outstanding I/O requests, and display status returned\n"
994 "               from the cancellation requests */\n"
995 msgstr ""
996 "            /* On receipt of SIGQUIT, attempt to cancel each of the\n"
997 "               outstanding I/O requests, and display status returned\n"
998 "               from the cancellation requests */\n"
999
1000 #. type: Plain text
1001 #: build/C/man7/aio.7:377
1002 #, no-wrap
1003 msgid "            printf(\"got SIGQUIT; canceling I/O requests: \\en\");\n"
1004 msgstr "            printf(\"got SIGQUIT; canceling I/O requests: \\en\");\n"
1005
1006 #. type: Plain text
1007 #: build/C/man7/aio.7:394
1008 #, no-wrap
1009 msgid ""
1010 "            for (j = 0; j E<lt> numReqs; j++) {\n"
1011 "                if (ioList[j].status == EINPROGRESS) {\n"
1012 "                    printf(\"    Request %d on descriptor %d:\", j,\n"
1013 "                            ioList[j].aiocbp-E<gt>aio_fildes);\n"
1014 "                    s = aio_cancel(ioList[j].aiocbp-E<gt>aio_fildes,\n"
1015 "                            ioList[j].aiocbp);\n"
1016 "                    if (s == AIO_CANCELED)\n"
1017 "                        printf(\"I/O canceled\\en\");\n"
1018 "                    else if (s == AIO_NOTCANCELED)\n"
1019 "                            printf(\"I/O not canceled\\en\");\n"
1020 "                    else if (s == AIO_ALLDONE)\n"
1021 "                        printf(\"I/O all done\\en\");\n"
1022 "                    else\n"
1023 "                        errMsg(\"aio_cancel\");\n"
1024 "                }\n"
1025 "            }\n"
1026 msgstr ""
1027 "            for (j = 0; j E<lt> numReqs; j++) {\n"
1028 "                if (ioList[j].status == EINPROGRESS) {\n"
1029 "                    printf(\"    Request %d on descriptor %d:\", j,\n"
1030 "                            ioList[j].aiocbp-E<gt>aio_fildes);\n"
1031 "                    s = aio_cancel(ioList[j].aiocbp-E<gt>aio_fildes,\n"
1032 "                            ioList[j].aiocbp);\n"
1033 "                    if (s == AIO_CANCELED)\n"
1034 "                        printf(\"I/O canceled\\en\");\n"
1035 "                    else if (s == AIO_NOTCANCELED)\n"
1036 "                            printf(\"I/O not canceled\\en\");\n"
1037 "                    else if (s == AIO_ALLDONE)\n"
1038 "                        printf(\"I/O all done\\en\");\n"
1039 "                    else\n"
1040 "                        errMsg(\"aio_cancel\");\n"
1041 "                }\n"
1042 "            }\n"
1043
1044 #. type: Plain text
1045 #: build/C/man7/aio.7:397
1046 #, no-wrap
1047 msgid ""
1048 "            gotSIGQUIT = 0;\n"
1049 "        }\n"
1050 msgstr ""
1051 "            gotSIGQUIT = 0;\n"
1052 "        }\n"
1053
1054 #. type: Plain text
1055 #: build/C/man7/aio.7:400
1056 #, no-wrap
1057 msgid ""
1058 "        /* Check the status of each I/O request that is still\n"
1059 "           in progress */\n"
1060 msgstr ""
1061 "        /* Check the status of each I/O request that is still\n"
1062 "           in progress */\n"
1063
1064 #. type: Plain text
1065 #: build/C/man7/aio.7:407
1066 #, no-wrap
1067 msgid ""
1068 "        printf(\"aio_error():\\en\");\n"
1069 "        for (j = 0; j E<lt> numReqs; j++) {\n"
1070 "            if (ioList[j].status == EINPROGRESS) {\n"
1071 "                printf(\"    for request %d (descriptor %d): \",\n"
1072 "                        j, ioList[j].aiocbp-E<gt>aio_fildes);\n"
1073 "                ioList[j].status = aio_error(ioList[j].aiocbp);\n"
1074 msgstr ""
1075 "        printf(\"aio_error():\\en\");\n"
1076 "        for (j = 0; j E<lt> numReqs; j++) {\n"
1077 "            if (ioList[j].status == EINPROGRESS) {\n"
1078 "                printf(\"    for request %d (descriptor %d): \",\n"
1079 "                        j, ioList[j].aiocbp-E<gt>aio_fildes);\n"
1080 "                ioList[j].status = aio_error(ioList[j].aiocbp);\n"
1081
1082 #. type: Plain text
1083 #: build/C/man7/aio.7:422
1084 #, no-wrap
1085 msgid ""
1086 "                switch (ioList[j].status) {\n"
1087 "                case 0:\n"
1088 "                    printf(\"I/O succeeded\\en\");\n"
1089 "                    break;\n"
1090 "                case EINPROGRESS:\n"
1091 "                    printf(\"In progress\\en\");\n"
1092 "                    break;\n"
1093 "                case ECANCELED:\n"
1094 "                    printf(\"Canceled\\en\");\n"
1095 "                    break;\n"
1096 "                default:\n"
1097 "                    errMsg(\"aio_error\");\n"
1098 "                    break;\n"
1099 "                }\n"
1100 msgstr ""
1101 "                switch (ioList[j].status) {\n"
1102 "                case 0:\n"
1103 "                    printf(\"I/O succeeded\\en\");\n"
1104 "                    break;\n"
1105 "                case EINPROGRESS:\n"
1106 "                    printf(\"In progress\\en\");\n"
1107 "                    break;\n"
1108 "                case ECANCELED:\n"
1109 "                    printf(\"Canceled\\en\");\n"
1110 "                    break;\n"
1111 "                default:\n"
1112 "                    errMsg(\"aio_error\");\n"
1113 "                    break;\n"
1114 "                }\n"
1115
1116 #. type: Plain text
1117 #: build/C/man7/aio.7:428
1118 #, no-wrap
1119 msgid ""
1120 "                if (ioList[j].status != EINPROGRESS)\n"
1121 "                    openReqs--;\n"
1122 "            }\n"
1123 "        }\n"
1124 "    }\n"
1125 msgstr ""
1126 "                if (ioList[j].status != EINPROGRESS)\n"
1127 "                    openReqs--;\n"
1128 "            }\n"
1129 "        }\n"
1130 "    }\n"
1131
1132 #. type: Plain text
1133 #: build/C/man7/aio.7:430
1134 #, no-wrap
1135 msgid "    printf(\"All I/O requests completed\\en\");\n"
1136 msgstr "    printf(\"All I/O requests completed\\en\");\n"
1137
1138 #. type: Plain text
1139 #: build/C/man7/aio.7:432
1140 #, no-wrap
1141 msgid "    /* Check status return of all I/O requests */\n"
1142 msgstr "    /* Check status return of all I/O requests */\n"
1143
1144 #. type: Plain text
1145 #: build/C/man7/aio.7:436
1146 #, no-wrap
1147 msgid ""
1148 "    printf(\"aio_return():\\en\");\n"
1149 "    for (j = 0; j E<lt> numReqs; j++) {\n"
1150 "        ssize_t s;\n"
1151 msgstr ""
1152 "    printf(\"aio_return():\\en\");\n"
1153 "    for (j = 0; j E<lt> numReqs; j++) {\n"
1154 "        ssize_t s;\n"
1155
1156 #. type: Plain text
1157 #: build/C/man7/aio.7:441
1158 #, no-wrap
1159 msgid ""
1160 "        s = aio_return(ioList[j].aiocbp);\n"
1161 "        printf(\"    for request %d (descriptor %d): %ld\\en\",\n"
1162 "                j, ioList[j].aiocbp-E<gt>aio_fildes, (long) s);\n"
1163 "    }\n"
1164 msgstr ""
1165 "        s = aio_return(ioList[j].aiocbp);\n"
1166 "        printf(\"    for request %d (descriptor %d): %ld\\en\",\n"
1167 "                j, ioList[j].aiocbp-E<gt>aio_fildes, (long) s);\n"
1168 "    }\n"
1169
1170 #. type: Plain text
1171 #: build/C/man7/aio.7:444
1172 #, no-wrap
1173 msgid ""
1174 "    exit(EXIT_SUCCESS);\n"
1175 "}\n"
1176 msgstr ""
1177 "    exit(EXIT_SUCCESS);\n"
1178 "}\n"
1179
1180 #. type: SH
1181 #: build/C/man7/aio.7:445 build/C/man3/aio_cancel.3:104
1182 #: build/C/man3/aio_error.3:82 build/C/man3/aio_fsync.3:100
1183 #: build/C/man3/aio_init.3:97 build/C/man3/aio_read.3:147
1184 #: build/C/man3/aio_return.3:77 build/C/man3/aio_suspend.3:124
1185 #: build/C/man3/aio_write.3:149 build/C/man2/io_cancel.2:94
1186 #: build/C/man2/io_destroy.2:88 build/C/man2/io_getevents.2:101
1187 #: build/C/man2/io_setup.2:97 build/C/man2/io_submit.2:99
1188 #: build/C/man3/lio_listio.3:218
1189 #, no-wrap
1190 msgid "SEE ALSO"
1191 msgstr "関連項目"
1192
1193 #. type: Plain text
1194 #: build/C/man7/aio.7:460
1195 msgid ""
1196 "B<io_cancel>(2), B<io_destroy>(2), B<io_getevents>(2), B<io_setup>(2), "
1197 "B<io_submit>(2), B<aio_cancel>(3), B<aio_error>(3), B<aio_init>(3), "
1198 "B<aio_read>(3), B<aio_return>(3), B<aio_write>(3), B<lio_listio>(3), http://"
1199 "www.squid-cache.org/~adrian/Reprint-Pulavarty-OLS2003.pdf"
1200 msgstr ""
1201 "B<io_cancel>(2), B<io_destroy>(2), B<io_getevents>(2), B<io_setup>(2), "
1202 "B<io_submit>(2), B<aio_cancel>(3), B<aio_error>(3), B<aio_init>(3), "
1203 "B<aio_read>(3), B<aio_return>(3), B<aio_write>(3), B<lio_listio>(3), http://"
1204 "www.squid-cache.org/~adrian/Reprint-Pulavarty-OLS2003.pdf"
1205
1206 #. type: SH
1207 #: build/C/man7/aio.7:460 build/C/man3/aio_cancel.3:113
1208 #: build/C/man3/aio_error.3:91 build/C/man3/aio_fsync.3:110
1209 #: build/C/man3/aio_init.3:99 build/C/man3/aio_read.3:156
1210 #: build/C/man3/aio_return.3:86 build/C/man3/aio_suspend.3:134
1211 #: build/C/man3/aio_write.3:158 build/C/man2/io_cancel.2:107
1212 #: build/C/man2/io_destroy.2:101 build/C/man2/io_getevents.2:116
1213 #: build/C/man2/io_setup.2:108 build/C/man2/io_submit.2:110
1214 #: build/C/man3/lio_listio.3:226
1215 #, no-wrap
1216 msgid "COLOPHON"
1217 msgstr "この文書について"
1218
1219 #. type: Plain text
1220 #: build/C/man7/aio.7:467 build/C/man3/aio_cancel.3:120
1221 #: build/C/man3/aio_error.3:98 build/C/man3/aio_fsync.3:117
1222 #: build/C/man3/aio_init.3:106 build/C/man3/aio_read.3:163
1223 #: build/C/man3/aio_return.3:93 build/C/man3/aio_suspend.3:141
1224 #: build/C/man3/aio_write.3:165 build/C/man2/io_cancel.2:114
1225 #: build/C/man2/io_destroy.2:108 build/C/man2/io_getevents.2:123
1226 #: build/C/man2/io_setup.2:115 build/C/man2/io_submit.2:117
1227 #: build/C/man3/lio_listio.3:233
1228 msgid ""
1229 "This page is part of release 3.40 of the Linux I<man-pages> project.  A "
1230 "description of the project, and information about reporting bugs, can be "
1231 "found at http://www.kernel.org/doc/man-pages/."
1232 msgstr ""
1233 "この man ページは Linux I<man-pages> プロジェクトのリリース 3.40 の一部\n"
1234 "である。プロジェクトの説明とバグ報告に関する情報は\n"
1235 "http://www.kernel.org/doc/man-pages/ に書かれている。"
1236
1237 #. type: TH
1238 #: build/C/man3/aio_cancel.3:23
1239 #, no-wrap
1240 msgid "AIO_CANCEL"
1241 msgstr "AIO_CANCEL"
1242
1243 #. type: TH
1244 #: build/C/man3/aio_cancel.3:23
1245 #, no-wrap
1246 msgid "2012-04-18"
1247 msgstr "2012-04-18"
1248
1249 #. type: Plain text
1250 #: build/C/man3/aio_cancel.3:26
1251 msgid "aio_cancel - cancel an outstanding asynchronous I/O request"
1252 msgstr "aio_cancel - 完了していない非同期 I/O リクエストをキャンセルする"
1253
1254 #. type: SH
1255 #: build/C/man3/aio_cancel.3:26 build/C/man3/aio_error.3:26
1256 #: build/C/man3/aio_fsync.3:26 build/C/man3/aio_init.3:27
1257 #: build/C/man3/aio_read.3:26 build/C/man3/aio_return.3:26
1258 #: build/C/man3/aio_suspend.3:27 build/C/man3/aio_write.3:26
1259 #: build/C/man2/io_cancel.2:26 build/C/man2/io_destroy.2:26
1260 #: build/C/man2/io_getevents.2:26 build/C/man2/io_setup.2:26
1261 #: build/C/man2/io_submit.2:26 build/C/man3/lio_listio.3:26
1262 #, no-wrap
1263 msgid "SYNOPSIS"
1264 msgstr "書式"
1265
1266 #. type: Plain text
1267 #: build/C/man3/aio_cancel.3:28 build/C/man3/aio_error.3:28
1268 #: build/C/man3/aio_fsync.3:28 build/C/man3/aio_read.3:28
1269 #: build/C/man3/aio_return.3:28 build/C/man3/aio_write.3:28
1270 msgid "B<#include E<lt>aio.hE<gt>>"
1271 msgstr "B<#include E<lt>aio.hE<gt>>"
1272
1273 #. type: Plain text
1274 #: build/C/man3/aio_cancel.3:30
1275 msgid "B<int aio_cancel(int >I<fd>B<, struct aiocb *>I<aiocbp>B<);>"
1276 msgstr "B<int aio_cancel(int >I<fd>B<, struct aiocb *>I<aiocbp>B<);>"
1277
1278 #. type: Plain text
1279 #: build/C/man3/aio_cancel.3:32 build/C/man3/aio_error.3:32
1280 #: build/C/man3/aio_fsync.3:32 build/C/man3/aio_init.3:36
1281 #: build/C/man3/aio_read.3:32 build/C/man3/aio_return.3:32
1282 #: build/C/man3/aio_write.3:32
1283 msgid "Link with I<-lrt>."
1284 msgstr "I<-lrt> でリンクする。"
1285
1286 #. type: Plain text
1287 #: build/C/man3/aio_cancel.3:50
1288 msgid ""
1289 "The B<aio_cancel>()  function attempts to cancel outstanding asynchronous I/"
1290 "O requests for the file descriptor I<fd>.  If I<aiocbp> is NULL, all such "
1291 "requests are canceled.  Otherwise, only the request described by the control "
1292 "block pointed to by I<aiocbp> is canceled.  (See B<aio>(7)  for a "
1293 "description of the I<aiocb> structure.)"
1294 msgstr ""
1295 "B<aio_cancel>() 関数は、ファイルディスクリプタ I<fd> についての完了していな"
1296 "い\n"
1297 "非同期 I/O リクエストをキャンセルしようとする。 I<aiocbp> が NULL の場合、"
1298 "そ\n"
1299 "のような全てのリクエストがキャンセルされる。 I<aiocbp> が NULL でない場合、\n"
1300 "I<aiocbp> で指された制御ブロックで記述されたリクエストのみがキャンセルされ"
1301 "る。\n"
1302 "(I<aiocb> 構造体の説明は B<aio>(7) を参照)"
1303
1304 #. type: Plain text
1305 #: build/C/man3/aio_cancel.3:59
1306 msgid ""
1307 "Normal asynchronous notification occurs for canceled requests.  The request "
1308 "return status (B<aio_return>(3))  is set to -1, and the request error status "
1309 "(B<aio_error>(3))  is set to B<ECANCELED>.  The control block of requests "
1310 "that cannot be canceled is not changed."
1311 msgstr ""
1312 "キャンセルされたリクエストに対して、通常の非同期通知が起こる。\n"
1313 "リクエストの返り値 (B<aio_return>(3)) は -1 に設定され、\n"
1314 "リクエストのエラー状態 (B<aio_error>(3)) は B<ECANCELED> に設定される。\n"
1315 "キャンセルできないリクエストの制御ブロックは変更されない。"
1316
1317 #. type: Plain text
1318 #: build/C/man3/aio_cancel.3:66
1319 msgid ""
1320 "If I<aiocbp> is not NULL, and I<fd> differs from the file descriptor with "
1321 "which the asynchronous operation was initiated, unspecified results occur."
1322 msgstr ""
1323 "I<aiocbp> が NULL でなく、かつ I<fd> が非同期操作が開始されたファイルディスク"
1324 "リプタと異なる場合、 生じる結果は不定である。"
1325
1326 #.  FreeBSD: not those on raw disk devices.
1327 #. type: Plain text
1328 #: build/C/man3/aio_cancel.3:69
1329 msgid "Which operations are cancelable is implementation-defined."
1330 msgstr "どの操作をキャンセルできるかは、実装定義である。"
1331
1332 #. type: SH
1333 #: build/C/man3/aio_cancel.3:69 build/C/man3/aio_error.3:43
1334 #: build/C/man3/aio_fsync.3:72 build/C/man3/aio_read.3:87
1335 #: build/C/man3/aio_return.3:48 build/C/man3/aio_suspend.3:79
1336 #: build/C/man3/aio_write.3:94 build/C/man2/io_cancel.2:51
1337 #: build/C/man2/io_destroy.2:48 build/C/man2/io_getevents.2:54
1338 #: build/C/man2/io_setup.2:49 build/C/man2/io_submit.2:48
1339 #: build/C/man3/lio_listio.3:107
1340 #, no-wrap
1341 msgid "RETURN VALUE"
1342 msgstr "返り値"
1343
1344 #. type: Plain text
1345 #: build/C/man3/aio_cancel.3:73
1346 msgid "The B<aio_cancel>()  function returns one of the following values:"
1347 msgstr "B<aio_cancel>() 関数は以下のいずれかの値を返す。"
1348
1349 #. type: TP
1350 #: build/C/man3/aio_cancel.3:73
1351 #, no-wrap
1352 msgid "B<AIO_CANCELED>"
1353 msgstr "B<AIO_CANCELED>"
1354
1355 #. type: Plain text
1356 #: build/C/man3/aio_cancel.3:76
1357 msgid "All requests were successfully canceled."
1358 msgstr "全てのリクエストが正常にキャンセルされた。"
1359
1360 #. type: TP
1361 #: build/C/man3/aio_cancel.3:76
1362 #, no-wrap
1363 msgid "B<AIO_NOTCANCELED>"
1364 msgstr "B<AIO_NOTCANCELED>"
1365
1366 #. type: Plain text
1367 #: build/C/man3/aio_cancel.3:82
1368 msgid ""
1369 "At least one of the requests specified was not canceled because it was in "
1370 "progress.  In this case, one may check the status of individual requests "
1371 "using B<aio_error>(3)."
1372 msgstr ""
1373 "指定されたリクエストのうち少なくとも一つが、実行中のため\n"
1374 "キャンセルできなかった。この場合には、B<aio_error>(3) を使って\n"
1375 "個々のリクエストの状態を確認できる。"
1376
1377 #. type: TP
1378 #: build/C/man3/aio_cancel.3:82
1379 #, no-wrap
1380 msgid "B<AIO_ALLDONE>"
1381 msgstr "B<AIO_ALLDONE>"
1382
1383 #. type: Plain text
1384 #: build/C/man3/aio_cancel.3:85
1385 msgid "All requests had already been completed before the call."
1386 msgstr "呼び出しの前に全てのリクエストがすでに完了していた。"
1387
1388 #. type: TP
1389 #: build/C/man3/aio_cancel.3:85
1390 #, no-wrap
1391 msgid "-1"
1392 msgstr "-1"
1393
1394 #. type: Plain text
1395 #: build/C/man3/aio_cancel.3:90
1396 msgid ""
1397 "An error occurred.  The cause of the error can be found by inspecting "
1398 "I<errno>."
1399 msgstr ""
1400 "エラーが発生した。\n"
1401 "I<errno> を確認することでエラーの原因を知ることができる。"
1402
1403 #. type: TP
1404 #: build/C/man3/aio_cancel.3:91 build/C/man3/aio_fsync.3:82
1405 #: build/C/man3/aio_read.3:106 build/C/man3/aio_write.3:113
1406 #: build/C/man2/io_submit.2:58
1407 #, no-wrap
1408 msgid "B<EBADF>"
1409 msgstr "B<EBADF>"
1410
1411 #. type: Plain text
1412 #: build/C/man3/aio_cancel.3:95
1413 msgid "I<fd> is not a valid file descriptor."
1414 msgstr "I<fd> が有効なファイルディスクリプタでない。"
1415
1416 #. type: Plain text
1417 #: build/C/man3/aio_cancel.3:99
1418 msgid "The B<aio_cancel>()  function is available since glibc 2.1."
1419 msgstr "B<aio_cancel>() 関数は glibc 2.1 以降で利用できる。"
1420
1421 #. type: Plain text
1422 #: build/C/man3/aio_cancel.3:104 build/C/man3/aio_error.3:82
1423 #: build/C/man3/aio_read.3:147 build/C/man3/aio_return.3:77
1424 msgid "See B<aio>(7)."
1425 msgstr "B<aio>(7) を参照。"
1426
1427 #. type: Plain text
1428 #: build/C/man3/aio_cancel.3:113
1429 msgid ""
1430 "B<aio_error>(3), B<aio_fsync>(3), B<aio_read>(3), B<aio_return>(3), "
1431 "B<aio_suspend>(3), B<aio_write>(3), B<lio_listio>(3), B<aio>(7)"
1432 msgstr ""
1433 "B<aio_error>(3), B<aio_fsync>(3), B<aio_read>(3), B<aio_return>(3), \n"
1434 "B<aio_suspend>(3), B<aio_write>(3), B<lio_listio>(3), B<aio>(7)"
1435
1436 #. type: TH
1437 #: build/C/man3/aio_error.3:23
1438 #, no-wrap
1439 msgid "AIO_ERROR"
1440 msgstr "AIO_ERROR"
1441
1442 #. type: TH
1443 #: build/C/man3/aio_error.3:23 build/C/man3/aio_read.3:23
1444 #: build/C/man3/aio_return.3:23
1445 #, no-wrap
1446 msgid "2010-10-03"
1447 msgstr "2010-10-03"
1448
1449 #. type: Plain text
1450 #: build/C/man3/aio_error.3:26
1451 msgid "aio_error - get error status of asynchronous I/O operation"
1452 msgstr "aio_error - 非同期 I/O 操作のエラー状態を取得する"
1453
1454 #. type: Plain text
1455 #: build/C/man3/aio_error.3:30
1456 msgid "B<int aio_error(const struct aiocb *>I<aiocbp>B<);>"
1457 msgstr "B<int aio_error(const struct aiocb *>I<aiocbp>B<);>"
1458
1459 #. type: Plain text
1460 #: build/C/man3/aio_error.3:43
1461 msgid ""
1462 "The B<aio_error>()  function returns the error status for the asynchronous I/"
1463 "O request with control block pointed to by I<aiocbp>.  (See B<aio>(7)  for a "
1464 "description of the I<aiocb> structure.)"
1465 msgstr ""
1466 "B<aio_error>() 関数は I<aiocbp> で指された制御ブロックでの非同期 I/O リクエ"
1467 "ス\n"
1468 "トのエラー状態を返す。(I<aiocb> 構造体の説明は B<aio>(7) を参照)"
1469
1470 #. type: Plain text
1471 #: build/C/man3/aio_error.3:45
1472 msgid "This function returns one of the following:"
1473 msgstr "この関数の返り値は以下のいずれかである。"
1474
1475 #. type: IP
1476 #: build/C/man3/aio_error.3:45 build/C/man3/aio_error.3:49
1477 #: build/C/man3/aio_error.3:52 build/C/man3/aio_error.3:54
1478 #: build/C/man3/aio_suspend.3:42 build/C/man3/aio_suspend.3:46
1479 #: build/C/man3/aio_suspend.3:48
1480 #, no-wrap
1481 msgid "*"
1482 msgstr "*"
1483
1484 #. type: Plain text
1485 #: build/C/man3/aio_error.3:49
1486 msgid "B<EINPROGRESS>, if the request has not been completed yet."
1487 msgstr "B<EINPROGRESS> (リクエストがまだ完了していない場合)"
1488
1489 #. type: Plain text
1490 #: build/C/man3/aio_error.3:52
1491 msgid "B<ECANCELED>, if the request was canceled."
1492 msgstr "B<ECANCELED> (リクエストがキャンセルされた場合)"
1493
1494 #. type: Plain text
1495 #: build/C/man3/aio_error.3:54
1496 msgid "0, if the request completed successfully."
1497 msgstr "0 (リクエストが正常に完了した場合)"
1498
1499 #. type: Plain text
1500 #: build/C/man3/aio_error.3:65
1501 msgid ""
1502 "A positive error, if the asynchronous I/O operation failed.  This is the "
1503 "same value that would have been stored in the I<errno> variable in the case "
1504 "of a synchronous B<read>(2), B<write>(2), B<fsync>(2), or B<fdatasync>(2)  "
1505 "call."
1506 msgstr ""
1507 "正のエラー (非同期 I/O 命令が失敗した場合)。\n"
1508 "同期の B<read>(2), B<write>(2), B<fsync>(2), B<fdatasync>(2) の呼び出しの場合"
1509 "で\n"
1510 "I<errno> 変数に格納されるのと同じ値になる。"
1511
1512 #. type: Plain text
1513 #: build/C/man3/aio_error.3:73
1514 msgid ""
1515 "I<aiocbp> does not point at a control block for an asynchronous I/O request "
1516 "of which the return status (see B<aio_return>(3))  has not been retrieved "
1517 "yet."
1518 msgstr ""
1519 "I<aiocbp> が、まだ返り値 (return status)  (B<aio_return>(3)  を参照) が取得さ"
1520 "れていない非同期 I/O リクエストの制御ブロックを指していない。"
1521
1522 #. type: Plain text
1523 #: build/C/man3/aio_error.3:77
1524 msgid "The B<aio_error>()  function is available since glibc 2.1."
1525 msgstr "B<aio_error>() 関数は glibc 2.1 以降で利用できる。"
1526
1527 #. type: Plain text
1528 #: build/C/man3/aio_error.3:91
1529 msgid ""
1530 "B<aio_cancel>(3), B<aio_fsync>(3), B<aio_read>(3), B<aio_return>(3), "
1531 "B<aio_suspend>(3), B<aio_write>(3), B<lio_listio>(3), B<aio>(7)"
1532 msgstr ""
1533 "B<aio_cancel>(3), B<aio_fsync>(3), B<aio_read>(3), B<aio_return>(3), "
1534 "B<aio_suspend>(3), B<aio_write>(3), B<lio_listio>(3), B<aio>(7)"
1535
1536 #. type: TH
1537 #: build/C/man3/aio_fsync.3:23
1538 #, no-wrap
1539 msgid "AIO_FSYNC"
1540 msgstr "AIO_FSYNC"
1541
1542 #. type: Plain text
1543 #: build/C/man3/aio_fsync.3:26
1544 msgid "aio_fsync - asynchronous file synchronization"
1545 msgstr "aio_fsync - 非同期ファイルを同期させる"
1546
1547 #. type: Plain text
1548 #: build/C/man3/aio_fsync.3:30
1549 msgid "B<int aio_fsync(int >I<op>B<, struct aiocb *>I<aiocbp>B<);>"
1550 msgstr "B<int aio_fsync(int >I<op>B<, struct aiocb *>I<aiocbp>B<);>"
1551
1552 #. type: Plain text
1553 #: build/C/man3/aio_fsync.3:43
1554 msgid ""
1555 "The B<aio_fsync>()  function does a sync on all outstanding asynchronous I/O "
1556 "operations associated with I<aiocbp-E<gt>aio_fildes>.  (See B<aio>(7)  for a "
1557 "description of the I<aiocb> structure.)"
1558 msgstr ""
1559 "B<aio_fsync>() 関数は、 I<aiocbp-E<gt>aio_fildes> で関連付けられているまだ\n"
1560 "完了していない全ての非同期 I/O 操作を同期させる。\n"
1561 "(I<aiocb> 構造体の説明は B<aio>(7) を参照)"
1562
1563 #. type: Plain text
1564 #: build/C/man3/aio_fsync.3:57
1565 msgid ""
1566 "More precisely, if I<op> is B<O_SYNC>, then all currently queued I/O "
1567 "operations shall be completed as if by a call of B<fsync>(2), and if I<op> "
1568 "is B<O_DSYNC>, this call is the asynchronous analog of B<fdatasync>(2)."
1569 msgstr ""
1570 "より正確に言うと、 I<op> が B<O_SYNC> の場合、現在キューに入れられている全"
1571 "て\n"
1572 "の I/O 操作は、 B<fsync>(2) が呼ばれたかのように完了されるだろう。 また\n"
1573 "I<op> が B<O_DSYNC> の場合、この呼び出しは B<fdatasync>(2) の非同期版となる。"
1574
1575 #. type: Plain text
1576 #: build/C/man3/aio_fsync.3:59
1577 msgid "Note that this is a request only; it does not wait for I/O completion."
1578 msgstr ""
1579 "この関数はリクエストを行うだけである点に注意すること。\n"
1580 "I/O の完了の待ち合わせは行わない。"
1581
1582 #. type: Plain text
1583 #: build/C/man3/aio_fsync.3:72
1584 msgid ""
1585 "Apart from I<aio_fildes>, the only field in the structure pointed to by "
1586 "I<aiocbp> that is used by this call is the I<aio_sigevent> field (a "
1587 "I<sigevent> structure, described in B<sigevent>(7)), which indicates the "
1588 "desired type of asynchronous notification at completion.  All other fields "
1589 "are ignored."
1590 msgstr ""
1591 "I<aiocbp> で指される構造体のフィールドのうち、この呼び出しで I<aio_fildes>\n"
1592 "以外に使用されるのは I<aio_sigevent> フィールド (I<sigevent> 構造体、説明は\n"
1593 "B<sigevent>(7) 参照) のみである。このフィールドは、完了時の非同期通知に使用\n"
1594 "したいタイプを示す。 その他のフィールドは無視される。"
1595
1596 #. type: Plain text
1597 #: build/C/man3/aio_fsync.3:78
1598 msgid ""
1599 "On success (the sync request was successfully queued)  this function returns "
1600 "0.  On error -1 is returned, and I<errno> is set appropriately."
1601 msgstr ""
1602 "成功した場合 (同期リクエストをキューに入れるのに成功した場合)、 この関数は 0 "
1603 "を返す。 エラーの場合、-1 が返され、 I<errno> が適切に設定される。"
1604
1605 #. type: TP
1606 #: build/C/man3/aio_fsync.3:79 build/C/man3/aio_read.3:103
1607 #: build/C/man3/aio_suspend.3:88 build/C/man3/aio_write.3:110
1608 #: build/C/man2/io_cancel.2:57 build/C/man2/io_setup.2:55
1609 #: build/C/man2/io_submit.2:55 build/C/man3/lio_listio.3:149
1610 #: build/C/man3/lio_listio.3:152
1611 #, no-wrap
1612 msgid "B<EAGAIN>"
1613 msgstr "B<EAGAIN>"
1614
1615 #. type: Plain text
1616 #: build/C/man3/aio_fsync.3:82 build/C/man3/aio_read.3:106
1617 #: build/C/man3/aio_write.3:113 build/C/man3/lio_listio.3:152
1618 msgid "Out of resources."
1619 msgstr "リソースが足りない。"
1620
1621 #. type: Plain text
1622 #: build/C/man3/aio_fsync.3:86 build/C/man3/aio_write.3:117
1623 msgid "I<aio_fildes> is not a valid file descriptor open for writing."
1624 msgstr ""
1625 "I<aio_fildes> が書き込みのためにオープンされた有効なファイルディスクリプタで"
1626 "はない。"
1627
1628 #. type: Plain text
1629 #: build/C/man3/aio_fsync.3:94
1630 msgid ""
1631 "Synchronized I/O is not supported for this file, or I<op> is not B<O_SYNC> "
1632 "or B<O_DSYNC>."
1633 msgstr ""
1634 "このファイルでは同期 I/O がサポートされていない。\n"
1635 "または I<op> が B<O_SYNC> でも B<O_DSYNC> でもない。"
1636
1637 #. type: Plain text
1638 #: build/C/man3/aio_fsync.3:98
1639 msgid "The B<aio_fsync>()  function is available since glibc 2.1."
1640 msgstr "The B<aio_fsync>() 関数は glibc 2.1 以降で利用できる。"
1641
1642 #. type: Plain text
1643 #: build/C/man3/aio_fsync.3:110
1644 msgid ""
1645 "B<aio_cancel>(3), B<aio_error>(3), B<aio_read>(3), B<aio_return>(3), "
1646 "B<aio_suspend>(3), B<aio_write>(3), B<lio_listio>(3), B<aio>(7), B<sigevent>"
1647 "(7)"
1648 msgstr ""
1649 "B<aio_cancel>(3), B<aio_error>(3), B<aio_read>(3), B<aio_return>(3), "
1650 "B<aio_suspend>(3), B<aio_write>(3), B<lio_listio>(3), B<aio>(7), B<sigevent>"
1651 "(7)"
1652
1653 #. type: TH
1654 #: build/C/man3/aio_init.3:24
1655 #, no-wrap
1656 msgid "AIO_INIT"
1657 msgstr "AIO_INIT"
1658
1659 #. type: TH
1660 #: build/C/man3/aio_init.3:24
1661 #, no-wrap
1662 msgid "2012-04-26"
1663 msgstr "2012-04-26"
1664
1665 #. type: Plain text
1666 #: build/C/man3/aio_init.3:27
1667 msgid "aio_init - asynchronous I/O initialization"
1668 msgstr "aio_init - 非同期 I/O の初期化"
1669
1670 #. type: Plain text
1671 #: build/C/man3/aio_init.3:31
1672 #, no-wrap
1673 msgid ""
1674 "B<#define _GNU_SOURCE>         /* See feature_test_macros(7) */\n"
1675 "B<#include E<lt>aio.hE<gt>>\n"
1676 msgstr ""
1677 "B<#define _GNU_SOURCE>         /* See feature_test_macros(7) */\n"
1678 "B<#include E<lt>aio.hE<gt>>\n"
1679
1680 #. type: Plain text
1681 #: build/C/man3/aio_init.3:33
1682 #, no-wrap
1683 msgid "B<void aio_init(const struct aioinit *>I<init>B<);>\n"
1684 msgstr "B<void aio_init(const struct aioinit *>I<init>B<);>\n"
1685
1686 #. type: Plain text
1687 #: build/C/man3/aio_init.3:43
1688 msgid ""
1689 "The GNU-specific B<aio_init>()  function allows the caller to provide tuning "
1690 "hints to the glibc POSIX AIO implementation.  Use of this function is "
1691 "optional, but to be effective, it must be called before employing any other "
1692 "functions in the POSIX AIO API."
1693 msgstr ""
1694 "GNU 固有の B<aio_init>() 関数を使うと、呼び出し側が glibc の POSIX AIO 実装"
1695 "に\n"
1696 "対して調整 (チューニング) のヒントを与えることができる。この関数は使用しな"
1697 "く\n"
1698 "てもよいが、この関数が効果を持つには、POSIX AIO API の他の関数を利用する前"
1699 "に\n"
1700 "呼び出さなければならない。"
1701
1702 #. type: Plain text
1703 #: build/C/man3/aio_init.3:47
1704 msgid ""
1705 "The tuning information is provided in the buffer pointed to by the argument "
1706 "I<init>.  This buffer is a structure of the following form:"
1707 msgstr ""
1708 "チューニングの情報は、引き数 I<init> が指すバッファで与える。\n"
1709 "このバッファは以下の形式の構造体である。"
1710
1711 #. type: Plain text
1712 #: build/C/man3/aio_init.3:62
1713 #, no-wrap
1714 msgid ""
1715 "struct aioinit {\n"
1716 "    int aio_threads;    /* Maximum number of threads */\n"
1717 "    int aio_num;        /* Number of expected simultaneous\n"
1718 "                           requests */\n"
1719 "    int aio_locks;      /* Not used */\n"
1720 "    int aio_usedba;     /* Not used */\n"
1721 "    int aio_debug;      /* Not used */\n"
1722 "    int aio_numusers;   /* Not used */\n"
1723 "    int aio_idle_time;  /* Number of seconds before idle thread\n"
1724 "                           terminates (since glibc 2.2) */\n"
1725 "    int aio_reserved;\n"
1726 "};\n"
1727 msgstr ""
1728 "struct aioinit {\n"
1729 "    int aio_threads;    /* Maximum number of threads */\n"
1730 "    int aio_num;        /* Number of expected simultaneous\n"
1731 "                           requests */\n"
1732 "    int aio_locks;      /* Not used */\n"
1733 "    int aio_usedba;     /* Not used */\n"
1734 "    int aio_debug;      /* Not used */\n"
1735 "    int aio_numusers;   /* Not used */\n"
1736 "    int aio_idle_time;  /* Number of seconds before idle thread\n"
1737 "                           terminates (since glibc 2.2) */\n"
1738 "    int aio_reserved;\n"
1739 "};\n"
1740
1741 #. type: Plain text
1742 #: build/C/man3/aio_init.3:68
1743 msgid "The following fields are used in the I<aioinit> structure:"
1744 msgstr "I<aioinit> 構造体のフィールドのうち以下が使用される。"
1745
1746 #. type: TP
1747 #: build/C/man3/aio_init.3:68
1748 #, no-wrap
1749 msgid "I<aio_threads>"
1750 msgstr "I<aio_threads>"
1751
1752 #. type: Plain text
1753 #: build/C/man3/aio_init.3:76
1754 msgid ""
1755 "This field specifies the maximum number of worker threads that may be used "
1756 "by the implementation.  If the number of outstanding I/O operations exceeds "
1757 "this limit, then excess operations will be queued until a worker thread "
1758 "becomes free.  If this field is specified with a value less than 1, the "
1759 "value 1 is used.  The default value is 20."
1760 msgstr ""
1761 "このフィールドは、AIO の実装が使用できるワーカースレッド数の最大値を指定す"
1762 "る。\n"
1763 "完了していない I/O 操作の数がこの上限を超えた場合、超過した操作は\n"
1764 "空いたワーカースレッドができるまでキューに入る。\n"
1765 "このフィールドに 1 未満の値を指定した場合には、値 1 が使用される。\n"
1766 "デフォルト値は 20 である。"
1767
1768 #. type: TP
1769 #: build/C/man3/aio_init.3:76
1770 #, no-wrap
1771 msgid "I<aio_num>"
1772 msgstr "I<aio_num>"
1773
1774 #.  FIXME But, if aio_num > 32, the behavior looks strange. See
1775 #.  http://sourceware.org/bugzilla/show_bug.cgi?id=12083
1776 #. type: Plain text
1777 #: build/C/man3/aio_init.3:85
1778 msgid ""
1779 "This field should specify the maximum number of simultaneous I/O requests "
1780 "that the caller expects to enqueue.  If a value less than 32 is specified "
1781 "for this field, it is rounded up to 32.  The default value is 64."
1782 msgstr ""
1783 "このフィールドは、呼び出し側がキューに入れる予定の\n"
1784 "同時 I/O リクエスト数の最大値を指定する。\n"
1785 "このフィールドに 32 未満の値が指定された場合、値は 32 に切り上げられる。\n"
1786 "デフォルト値は 64 である。"
1787
1788 #. type: TP
1789 #: build/C/man3/aio_init.3:85
1790 #, no-wrap
1791 msgid "I<aio_idle_time>"
1792 msgstr "I<aio_idle_time>"
1793
1794 #. type: Plain text
1795 #: build/C/man3/aio_init.3:91
1796 msgid ""
1797 "This field specifies the amount of time in seconds that a worker thread "
1798 "should wait for further requests before terminating, after having completed "
1799 "a previous request.  The default value is 1."
1800 msgstr ""
1801 "このフィールドは、あるワーカースレッドが、前のリクエストの処理を完了してか"
1802 "ら、\n"
1803 "次のリクエストをどのくらい時間待つかを秒単位で指定する。\n"
1804 "指定した時間を経過しても次のリクエストがなければ、\n"
1805 "そのワーカースレッドは終了される。デフォルト値は 1 秒である。"
1806
1807 #. type: Plain text
1808 #: build/C/man3/aio_init.3:95
1809 msgid "The B<aio_init>()  function is available since glibc 2.1."
1810 msgstr "The B<aio_init>() 関数は glibc 2.1 以降で利用できる。"
1811
1812 #. type: Plain text
1813 #: build/C/man3/aio_init.3:97
1814 msgid "This function is a GNU extension."
1815 msgstr "この関数は GNU による拡張である。"
1816
1817 #. type: Plain text
1818 #: build/C/man3/aio_init.3:99
1819 msgid "B<aio>(7)"
1820 msgstr "B<aio>(7)"
1821
1822 #. type: TH
1823 #: build/C/man3/aio_read.3:23
1824 #, no-wrap
1825 msgid "AIO_READ"
1826 msgstr "AIO_READ"
1827
1828 #. type: Plain text
1829 #: build/C/man3/aio_read.3:26
1830 msgid "aio_read - asynchronous read"
1831 msgstr "aio_read - 非同期で読み込む"
1832
1833 #. type: Plain text
1834 #: build/C/man3/aio_read.3:30
1835 msgid "B<int aio_read(struct aiocb *>I<aiocbp>B<);>"
1836 msgstr "B<int aio_read(struct aiocb *>I<aiocbp>B<);>"
1837
1838 #. type: Plain text
1839 #: build/C/man3/aio_read.3:40
1840 msgid ""
1841 "The B<aio_read>()  function queues the I/O request described by the buffer "
1842 "pointed to by I<aiocbp>.  This function is the asynchronous analog of B<read>"
1843 "(2).  The arguments of the call"
1844 msgstr ""
1845 "B<aio_read>() 関数は、I<aiocbp> が指すバッファに記載された I/O リクエストを\n"
1846 "キューに入れる。この関数は B<read>(2) の非同期版である。\n"
1847 "呼び出し"
1848
1849 #. type: Plain text
1850 #: build/C/man3/aio_read.3:42
1851 #, no-wrap
1852 msgid "    read(fd, buf, count)\n"
1853 msgstr "    read(fd, buf, count)\n"
1854
1855 #. type: Plain text
1856 #: build/C/man3/aio_read.3:55 build/C/man3/aio_write.3:55
1857 msgid ""
1858 "correspond (in order) to the fields I<aio_fildes>, I<aio_buf>, and "
1859 "I<aio_nbytes> of the structure pointed to by I<aiocbp>.  (See B<aio>(7)  for "
1860 "a description of the I<aiocb> structure.)"
1861 msgstr ""
1862 "の各引き数は I<aiocb> が指す構造体の I<aio_fildes>, I<aio_buf>, "
1863 "I<aio_nbytes>\n"
1864 "に (この順序で) 対応する (I<aiocb> 構造体の説明は B<aio>(7) を参照)。"
1865
1866 #. type: Plain text
1867 #: build/C/man3/aio_read.3:61
1868 msgid ""
1869 "The data is read starting at the absolute file offset I<aiocbp-"
1870 "E<gt>aio_offset>, regardless of the current file offset.  After the call, "
1871 "the value of the current file offset is unspecified."
1872 msgstr ""
1873 "データの読み込みは、カレントのファイルオフセットに関係なく、\n"
1874 "絶対ファイルオフセット I<aiocbp-E<gt>aio_offset> を開始点として行われる。\n"
1875 "呼び出しの後のカレントのファイルオフセットは規定されていない。"
1876
1877 #. type: Plain text
1878 #: build/C/man3/aio_read.3:74
1879 msgid ""
1880 "The \"asynchronous\" means that this call returns as soon as the request has "
1881 "been enqueued; the read may or may not have completed when the call "
1882 "returns.  One tests for completion using B<aio_error>(3).  The return status "
1883 "of a completed I/O operation can be obtained by B<aio_return>(3).  "
1884 "Asynchronous notification of I/O completion can be obtained by setting "
1885 "I<aiocbp-E<gt>aio_sigevent> appropriately; see B<sigevent>(7)  for details."
1886 msgstr ""
1887 "「非同期」とは「リクエストがキューに入れられたら、この呼び出しはすぐに返"
1888 "る」\n"
1889 "ということである。 呼び出しから戻った時に、読み込みは完了しているかも知れない"
1890 "し、\n"
1891 "完了していないかも知れない。 B<aio_error>(3) を使うことで完了したかをテストで"
1892 "きる。\n"
1893 "完了した I/O 操作の返り値は B<aio_return>(3) で取得できる。\n"
1894 "I<aiocbp-E<gt>aio_sigevent> を適切に設定することで、\n"
1895 "I/O 完了の非同期通知は受けることもできる。詳細は B<sigevent>(7) を参照。"
1896
1897 #. type: Plain text
1898 #: build/C/man3/aio_read.3:81 build/C/man3/aio_write.3:88
1899 msgid ""
1900 "If B<_POSIX_PRIORITIZED_IO> is defined, and this file supports it, then the "
1901 "asynchronous operation is submitted at a priority equal to that of the "
1902 "calling process minus I<aiocbp-E<gt>aio_reqprio>."
1903 msgstr ""
1904 "B<_POSIX_PRIORITIZED_IO> が定義されていて、 かつファイルがこれをサポートして"
1905 "いる場合、 非同期操作は呼び出したプロセスの優先度から I<aiocbp-"
1906 "E<gt>aio_reqprio> を引いた優先度で登録 (submit) される。"
1907
1908 #. type: Plain text
1909 #: build/C/man3/aio_read.3:85 build/C/man3/aio_write.3:92
1910 msgid "The field I<aiocbp-E<gt>aio_lio_opcode> is ignored."
1911 msgstr "フィールド I<aiocbp-E<gt>aio_lio_opcode> は無視される。"
1912
1913 #. type: Plain text
1914 #: build/C/man3/aio_read.3:87
1915 msgid "No data is read from a regular file beyond its maximum offset."
1916 msgstr ""
1917 "最大オフセットを超えた通常のファイルからは、何もデータが読み込まれない。"
1918
1919 #. type: Plain text
1920 #: build/C/man3/aio_read.3:102 build/C/man3/aio_write.3:109
1921 msgid ""
1922 "On success, 0 is returned.  On error the request is not enqueued, -1 is "
1923 "returned, and I<errno> is set appropriately.  If an error is only detected "
1924 "later, it will be reported via B<aio_return>(3)  (returns status -1) and "
1925 "B<aio_error>(3)  (error status\\(emwhatever one would have gotten in "
1926 "I<errno>, such as B<EBADF>)."
1927 msgstr ""
1928 "成功した場合、0 が返される。 エラーの場合、リクエストはキューに入れられず、\n"
1929 "-1 が返されて、 I<errno> が適切に設定される。 エラーは後でのみ検知された場合"
1930 "は、\n"
1931 "エラーは B<aio_return>(3) と B<aio_error>(3) 経由で報告されることになる\n"
1932 "(B<aio_return>(3) は状態 -1 を返し、B<aio_error>(3) でエラー状態\\(em\n"
1933 "I<errno> で取得できる B<EBADF> のようなエラー状態が返される)。"
1934
1935 #. type: Plain text
1936 #: build/C/man3/aio_read.3:110
1937 msgid "I<aio_fildes> is not a valid file descriptor open for reading."
1938 msgstr ""
1939 "I<aio_fildes> は読み込みのためにオープンされた有効なファイルディスクリプタで"
1940 "ない。"
1941
1942 #. type: Plain text
1943 #: build/C/man3/aio_read.3:118
1944 msgid ""
1945 "One or more of I<aio_offset>, I<aio_reqprio>, or I<aio_nbytes> are invalid."
1946 msgstr ""
1947 "I<aio_offset>, I<aio_reqprio>, I<aio_nbytes> のうち 1 つ以上が無効である。"
1948
1949 #. type: TP
1950 #: build/C/man3/aio_read.3:118 build/C/man3/aio_write.3:128
1951 #: build/C/man2/io_cancel.2:66 build/C/man2/io_destroy.2:60
1952 #: build/C/man2/io_getevents.2:73 build/C/man2/io_setup.2:69
1953 #: build/C/man2/io_submit.2:71
1954 #, no-wrap
1955 msgid "B<ENOSYS>"
1956 msgstr "B<ENOSYS>"
1957
1958 #. type: Plain text
1959 #: build/C/man3/aio_read.3:121 build/C/man3/aio_write.3:131
1960 msgid "This function is not supported."
1961 msgstr "この関数がサポートされていない。"
1962
1963 #. type: TP
1964 #: build/C/man3/aio_read.3:121
1965 #, no-wrap
1966 msgid "B<EOVERFLOW>"
1967 msgstr "B<EOVERFLOW>"
1968
1969 #. type: Plain text
1970 #: build/C/man3/aio_read.3:126
1971 msgid ""
1972 "The file is a regular file, we start reading before end-of-file and want at "
1973 "least one byte, but the starting position is past the maximum offset for "
1974 "this file."
1975 msgstr ""
1976 "ファイルが通常のファイルであり、 ファイルの終端の前から読み込みを開始して、 "
1977 "少なくとも 1 バイトを読み込もうとした。 しかし開始位置がこのファイルの最大オ"
1978 "フセットを超えていた。"
1979
1980 #. type: Plain text
1981 #: build/C/man3/aio_read.3:130
1982 msgid "The B<aio_read>()  function is available since glibc 2.1."
1983 msgstr "The B<aio_read>() 関数は glibc 2.1 以降で利用できる。"
1984
1985 #.  or the control block of the operation
1986 #. type: Plain text
1987 #: build/C/man3/aio_read.3:140
1988 msgid ""
1989 "It is a good idea to zero out the control block before use.  The control "
1990 "block must not be changed while the read operation is in progress.  The "
1991 "buffer area being read into must not be accessed during the operation or "
1992 "undefined results may occur.  The memory areas involved must remain valid."
1993 msgstr ""
1994 "使用する前に制御ブロックを 0 にしておくのは、よい考えである。 この制御ブロッ"
1995 "クは、読み込み操作が進行している間は変更すべきでない。 読み込まれるバッファ領"
1996 "域は 操作の最中にアクセスすべきではない。 さもないと起こる結果が不定になる。 "
1997 "これに含まれるメモリ領域は、有効なままにしなければならない。"
1998
1999 #. type: Plain text
2000 #: build/C/man3/aio_read.3:144 build/C/man3/aio_write.3:149
2001 #: build/C/man3/lio_listio.3:218
2002 msgid ""
2003 "Simultaneous I/O operations specifying the same I<aiocb> structure produce "
2004 "undefined results."
2005 msgstr ""
2006 "同じ I<aiocb> 構造体を指定して同時に複数の I/O 操作を行った場合、\n"
2007 "どのような結果になるかは不定である。"
2008
2009 #. type: Plain text
2010 #: build/C/man3/aio_read.3:156
2011 msgid ""
2012 "B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_return>(3), "
2013 "B<aio_suspend>(3), B<aio_write>(3), B<lio_listio>(3), B<aio>(7)"
2014 msgstr ""
2015 "B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_return>(3), "
2016 "B<aio_suspend>(3), B<aio_write>(3), B<lio_listio>(3), B<aio>(7)"
2017
2018 #. type: TH
2019 #: build/C/man3/aio_return.3:23
2020 #, no-wrap
2021 msgid "AIO_RETURN"
2022 msgstr "AIO_RETURN"
2023
2024 #. type: Plain text
2025 #: build/C/man3/aio_return.3:26
2026 msgid "aio_return - get return status of asynchronous I/O operation"
2027 msgstr "aio_return - 非同期 I/O 操作の返り値 (return status) を取得する"
2028
2029 #. type: Plain text
2030 #: build/C/man3/aio_return.3:30
2031 msgid "B<ssize_t aio_return(struct aiocb *>I<aiocbp>B<);>"
2032 msgstr "B<ssize_t aio_return(struct aiocb *>I<aiocbp>B<);>"
2033
2034 #. type: Plain text
2035 #: build/C/man3/aio_return.3:43
2036 msgid ""
2037 "The B<aio_return>()  function returns the final return status for the "
2038 "asynchronous I/O request with control block pointed to by I<aiocbp>.  (See "
2039 "B<aio>(7)  for a description of the I<aiocb> structure.)"
2040 msgstr ""
2041 "B<aio_return>() 関数は I<aiocbp> で指された制御ブロックにおける非同期 I/O\n"
2042 "リクエストの最終的な返り値を返す。\n"
2043 "(I<aiocb> 構造体の説明は B<aio>(7) を参照)"
2044
2045 #. type: Plain text
2046 #: build/C/man3/aio_return.3:48
2047 msgid ""
2048 "This function should be called only once for any given request, after "
2049 "B<aio_error>(3)  returns something other than B<EINPROGRESS>."
2050 msgstr ""
2051 "この関数は、 B<aio_error>(3)  が B<EINPROGRESS> 以外を返した後で、 与えられた"
2052 "リクエストに対して 1 回だけ呼ばれるべきである。"
2053
2054 #. type: Plain text
2055 #: build/C/man3/aio_return.3:57
2056 msgid ""
2057 "If the asynchronous I/O operation has completed, this function returns the "
2058 "value that would have been returned in case of a synchronous B<read>(2), "
2059 "B<write>(2), B<fsync>(2)  or B<fdatasync>(2), call."
2060 msgstr ""
2061 "非同期 I/O 操作が完了した場合、この関数は、同期呼び出し B<read>(2),\n"
2062 "B<write>(2), B<fsync>(2), B<fdatasync>(2) が返すのと同じ値を返す。"
2063
2064 #. type: Plain text
2065 #: build/C/man3/aio_return.3:62
2066 msgid ""
2067 "If the asynchronous I/O operation has not yet completed, the return value "
2068 "and effect of B<aio_return>()  are undefined."
2069 msgstr ""
2070 "非同期 I/O 操作が完了していない場合、\n"
2071 "B<aio_return>() の返り値とその影響は不定である。"
2072
2073 #. type: Plain text
2074 #: build/C/man3/aio_return.3:68
2075 msgid ""
2076 "I<aiocbp> does not point at a control block for an asynchronous I/O request "
2077 "of which the return status has not been retrieved yet."
2078 msgstr ""
2079 "I<aiocbp> が、返り値がまだ取得されていない非同期 I/O リクエストの 制御ブロッ"
2080 "クを指していない。"
2081
2082 #. type: Plain text
2083 #: build/C/man3/aio_return.3:72
2084 msgid "The B<aio_return>()  function is available since glibc 2.1."
2085 msgstr "The B<aio_return>() 関数は glibc 2.1 以降で利用できる。"
2086
2087 #. type: Plain text
2088 #: build/C/man3/aio_return.3:86
2089 msgid ""
2090 "B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_read>(3), "
2091 "B<aio_suspend>(3), B<aio_write>(3), B<lio_listio>(3), B<aio>(7)"
2092 msgstr ""
2093 "B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_read>(3), "
2094 "B<aio_suspend>(3), B<aio_write>(3), B<lio_listio>(3), B<aio>(7)"
2095
2096 #. type: TH
2097 #: build/C/man3/aio_suspend.3:24
2098 #, no-wrap
2099 msgid "AIO_SUSPEND"
2100 msgstr "AIO_SUSPEND"
2101
2102 #. type: Plain text
2103 #: build/C/man3/aio_suspend.3:27
2104 msgid "aio_suspend - wait for asynchronous I/O operation or timeout"
2105 msgstr "aio_suspend - 非同期 I/O 操作またはタイムアウトを待つ"
2106
2107 #. type: Plain text
2108 #: build/C/man3/aio_suspend.3:31 build/C/man3/lio_listio.3:29
2109 #, no-wrap
2110 msgid "B<#include E<lt>aio.hE<gt>>\n"
2111 msgstr "B<#include E<lt>aio.hE<gt>>\n"
2112
2113 #. type: Plain text
2114 #: build/C/man3/aio_suspend.3:33
2115 #, no-wrap
2116 msgid "B<int aio_suspend(const struct aiocb * const >I<aiocb_list>B<[],>\n"
2117 msgstr "B<int aio_suspend(const struct aiocb * const >I<aiocb_list>B<[],>\n"
2118
2119 #. type: Plain text
2120 #: build/C/man3/aio_suspend.3:35
2121 #, no-wrap
2122 msgid "B<                int >I<nitems>B<, const struct timespec *>I<timeout>B<);>\n"
2123 msgstr "B<                int >I<nitems>B<, const struct timespec *>I<timeout>B<);>\n"
2124
2125 #. type: Plain text
2126 #: build/C/man3/aio_suspend.3:37 build/C/man3/lio_listio.3:34
2127 #, no-wrap
2128 msgid "Link with I<-lrt>.\n"
2129 msgstr "I<-lrt> でリンクする。\n"
2130
2131 #. type: Plain text
2132 #: build/C/man3/aio_suspend.3:42
2133 msgid ""
2134 "The B<aio_suspend>()  function suspends the calling thread until one of the "
2135 "following occurs:"
2136 msgstr ""
2137 "B<aio_suspend>() 関数は、以下のいずれかが発生するまで\n"
2138 "呼び出したスレッドの実行を停止 (suspend) する。"
2139
2140 #. type: Plain text
2141 #: build/C/man3/aio_suspend.3:46
2142 msgid ""
2143 "One or more of the asynchronous I/O requests in the list I<aiocb_list> has "
2144 "completed."
2145 msgstr ""
2146 "I<aiocb_list> リスト内の非同期 I/O リクエストのうち、少なくとも一つが完了し"
2147 "た。"
2148
2149 #. type: Plain text
2150 #: build/C/man3/aio_suspend.3:48
2151 msgid "A signal is delivered."
2152 msgstr "シグナルが配送された。"
2153
2154 #. type: Plain text
2155 #: build/C/man3/aio_suspend.3:55
2156 msgid ""
2157 "I<timeout> is not NULL and the specified time interval has passed.  (For "
2158 "details of the I<timespec> structure, see B<nanosleep>(2).)"
2159 msgstr ""
2160 "I<timeout> が NULL でない場合に、指定した時間が経過した\n"
2161 "(I<timespec> 構造体の詳細は B<nanosleep>(2) を参照)。"
2162
2163 #. type: Plain text
2164 #: build/C/man3/aio_suspend.3:73
2165 msgid ""
2166 "The I<nitems> argument specifies the number of items in I<aiocb_list>.  Each "
2167 "item in the list pointed to by I<aiocb_list> must be either NULL (and then "
2168 "is ignored), or a pointer to a control block on which I/O was initiated "
2169 "using B<aio_read>(3), B<aio_write>(3), or B<lio_listio>(3).  (See B<aio>(7)  "
2170 "for a description of the I<aiocb> structure.)"
2171 msgstr ""
2172 "I<nitems> 引き数は I<aiocb_list> の要素数を指定する。\n"
2173 "I<aiocb_list> が指すリストの各要素は、NULL (これは無視される) か、\n"
2174 "B<aio_read>(3), B<aio_write>(3), B<lio_listio>(3) を使って I/O が開始された\n"
2175 "制御ブロックへのポインタでなければならない。\n"
2176 "(I<aiocb> 構造体の説明は B<aio>(7) を参照)"
2177
2178 #. type: Plain text
2179 #: build/C/man3/aio_suspend.3:79
2180 msgid ""
2181 "If B<CLOCK_MONOTONIC> is supported, this clock is used to measure the "
2182 "timeout interval (see B<clock_gettime>(3))."
2183 msgstr ""
2184 "B<CLOCK_MONOTONIC> がサポートされる場合、 このクロックを使ってタイムアウト"
2185 "の\n"
2186 "間隔が計測される (B<clock_gettime>(3) を参照)。"
2187
2188 #. type: Plain text
2189 #: build/C/man3/aio_suspend.3:87
2190 msgid ""
2191 "If this function returns after completion of one of the I/O requests "
2192 "specified in I<aiocb_list>, 0 is returned.  Otherwise, -1 is returned, and "
2193 "I<errno> is set to indicate the error."
2194 msgstr ""
2195 "I<aiocb_list> で指定された I/O リクエストの 1 つが完了した後に\n"
2196 "この関数が返った場合は、0 が返される。\n"
2197 "それ以外の場合は、 -1 が返り、 I<errno> にエラーを示す値に設定される。"
2198
2199 #. type: Plain text
2200 #: build/C/man3/aio_suspend.3:92
2201 msgid ""
2202 "The call timed out before any of the indicated operations had completed."
2203 msgstr "指示された操作のどれも完了しないうちに、呼び出しがタイムアウトした。"
2204
2205 #. type: TP
2206 #: build/C/man3/aio_suspend.3:92 build/C/man2/io_getevents.2:69
2207 #: build/C/man3/lio_listio.3:168
2208 #, no-wrap
2209 msgid "B<EINTR>"
2210 msgstr "B<EINTR>"
2211
2212 #. type: Plain text
2213 #: build/C/man3/aio_suspend.3:98
2214 msgid ""
2215 "The call was ended by signal (possibly the completion signal of one of the "
2216 "operations we were waiting for); see B<signal>(7)."
2217 msgstr ""
2218 "この呼び出しがシグナルによって終了させられた (このシグナルは、完了を待ってい"
2219 "た\n"
2220 "操作のいずれかの完了シグナルの可能性もある)。B<signal>(7) 参照。"
2221
2222 #. type: Plain text
2223 #: build/C/man3/aio_suspend.3:102
2224 msgid "The B<aio_suspend>()  function is available since glibc 2.1."
2225 msgstr "The B<aio_suspend>() 関数は glibc 2.1 以降で利用できる。"
2226
2227 #. type: Plain text
2228 #: build/C/man3/aio_suspend.3:108
2229 msgid ""
2230 "One can achieve polling by using a non-NULL I<timeout> that specifies a zero "
2231 "time interval."
2232 msgstr ""
2233 "時間間隔が 0 であることを指定する NULL ではない I<timeout> を使って、ポーリン"
2234 "グを行うこともできる。"
2235
2236 #. type: Plain text
2237 #: build/C/man3/aio_suspend.3:114
2238 msgid ""
2239 "If one or more of the asynchronous I/O operations specified in I<aiocb_list> "
2240 "has already completed at the time of the call to B<aio_suspend>(), then the "
2241 "call returns immediately."
2242 msgstr ""
2243 "I<aiocb_list> リストで指定した非同期 I/O 操作のうち、\n"
2244 "B<aio_suspend>() を呼び出した時点ですでに完了したものがある場合、\n"
2245 "B<aio_suspend>() はすぐに返る。"
2246
2247 #. type: Plain text
2248 #: build/C/man3/aio_suspend.3:124
2249 msgid ""
2250 "To determine which I/O operations have completed after a successful return "
2251 "from B<aio_suspend>(), use B<aio_error>(3)  to scan the list of I<aiocb> "
2252 "structures pointed to by I<aiocb_list>."
2253 msgstr ""
2254 "B<aio_suspend>() が成功で返った後でどの I/O 操作が完了したかを特定するに"
2255 "は、\n"
2256 "B<aio_error>(3) を使って I<aiocb_list> が指す I<aiocb> 構造体のリストを\n"
2257 "スキャンする。"
2258
2259 #. type: Plain text
2260 #: build/C/man3/aio_suspend.3:134
2261 msgid ""
2262 "B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_read>(3), "
2263 "B<aio_return>(3), B<aio_write>(3), B<lio_listio>(3), B<aio>(7), B<time>(7)"
2264 msgstr ""
2265 "B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_read>(3), "
2266 "B<aio_return>(3), B<aio_write>(3), B<lio_listio>(3), B<aio>(7), B<time>(7)"
2267
2268 #. type: TH
2269 #: build/C/man3/aio_write.3:23
2270 #, no-wrap
2271 msgid "AIO_WRITE"
2272 msgstr "AIO_WRITE"
2273
2274 #. type: Plain text
2275 #: build/C/man3/aio_write.3:26
2276 msgid "aio_write - asynchronous write"
2277 msgstr "aio_write - 非同期で書き込む"
2278
2279 #. type: Plain text
2280 #: build/C/man3/aio_write.3:30
2281 msgid "B<int aio_write(struct aiocb *>I<aiocbp>B<);>"
2282 msgstr "B<int aio_write(struct aiocb *>I<aiocbp>B<);>"
2283
2284 #. type: Plain text
2285 #: build/C/man3/aio_write.3:40
2286 msgid ""
2287 "The B<aio_write>()  function queues the I/O request described by the buffer "
2288 "pointed to by I<aiocb>.  This function is the asynchronous analog of B<write>"
2289 "(2).  The arguments of the call"
2290 msgstr ""
2291 "B<aio_write>() 関数は、I<aiocbp> が指すバッファに記載された I/O リクエスト"
2292 "を\n"
2293 "キューに入れる。この関数は B<write>(2) の非同期版である。\n"
2294 "呼び出し"
2295
2296 #. type: Plain text
2297 #: build/C/man3/aio_write.3:42
2298 #, no-wrap
2299 msgid "    write(fd, buf, count)\n"
2300 msgstr "    write(fd, buf, count)\n"
2301
2302 #. type: Plain text
2303 #: build/C/man3/aio_write.3:68
2304 msgid ""
2305 "If B<O_APPEND> is not set, the data is written starting at the absolute file "
2306 "offset I<aiocbp-E<gt>aio_offset>, regardless of the current file offset.  If "
2307 "B<O_APPEND> is set, data is written at the end of the file in the same order "
2308 "as B<aio_write>()  calls are made.  After the call, the value of the current "
2309 "file offset is unspecified."
2310 msgstr ""
2311 "B<O_APPEND> が設定されない場合、カレントのファイルオフセットに関係なく、 \n"
2312 "データは絶対ファイルオフセット I<aiocbp-E<gt>aio_offset> を開始点として書き込"
2313 "まれる。\n"
2314 "B<O_APPEND> が設定されている場合、データはファイルの末尾に、\n"
2315 "B<aio_write>() の呼び出しが行われたのと同じ順序で書き込まれる。\n"
2316 "この呼び出しの後のカレントのファイルオフセットは規定されていない。"
2317
2318 #. type: Plain text
2319 #: build/C/man3/aio_write.3:81
2320 msgid ""
2321 "The \"asynchronous\" means that this call returns as soon as the request has "
2322 "been enqueued; the write may or may not have completed when the call "
2323 "returns.  One tests for completion using B<aio_error>(3).  The return status "
2324 "of a completed I/O operation can be obtained B<aio_return>(3).  Asynchronous "
2325 "notification of I/O completion can be obtained by setting I<aiocbp-"
2326 "E<gt>aio_sigevent> appropriately; see B<sigevent>(7)  for details."
2327 msgstr ""
2328 "「非同期」とは「リクエストがキューに入れられたら、この呼び出しはすぐに返"
2329 "る」\n"
2330 "ということである。 呼び出しから戻った時に、書き込みは完了しているかも知れない"
2331 "し、\n"
2332 "完了していないかも知れない。 B<aio_error>(3) を使うことで完了したかをテストで"
2333 "きる。\n"
2334 "完了した I/O 操作の返り値は B<aio_return>(3) で取得できる。\n"
2335 "I<aiocbp-E<gt>aio_sigevent> を適切に設定することで、\n"
2336 "I/O 完了の非同期通知は受けることもできる。詳細は B<sigevent>(7) を参照。"
2337
2338 #. type: Plain text
2339 #: build/C/man3/aio_write.3:94
2340 msgid "No data is written to a regular file beyond its maximum offset."
2341 msgstr "最大オフセットを超えた通常のファイルには、何もデータが書き込まれない。"
2342
2343 #. type: TP
2344 #: build/C/man3/aio_write.3:117
2345 #, no-wrap
2346 msgid "B<EFBIG>"
2347 msgstr "B<EFBIG>"
2348
2349 #. type: Plain text
2350 #: build/C/man3/aio_write.3:121
2351 msgid ""
2352 "The file is a regular file, we want to write at least one byte, but the "
2353 "starting position is at or beyond the maximum offset for this file."
2354 msgstr ""
2355 "ファイルは通常のファイルであり、少なくとも 1 バイトを書き込もうとしている。 "
2356 "しかし開始位置が、このファイルの最大オフセットと同じかそれを超えている。"
2357
2358 #. type: Plain text
2359 #: build/C/man3/aio_write.3:128
2360 msgid ""
2361 "One or more of I<aio_offset>, I<aio_reqprio>, I<aio_nbytes> are invalid."
2362 msgstr ""
2363 "I<aio_offset>, I<aio_reqprio>, I<aio_nbytes> のうち 1 つ以上が無効である。"
2364
2365 #. type: Plain text
2366 #: build/C/man3/aio_write.3:135
2367 msgid "The B<aio_write>()  function is available since glibc 2.1."
2368 msgstr "The B<aio_write>() 関数は glibc 2.1 以降で利用できる。"
2369
2370 #.  or the control block of the operation
2371 #. type: Plain text
2372 #: build/C/man3/aio_write.3:145
2373 msgid ""
2374 "It is a good idea to zero out the control block before use.  The control "
2375 "block must not be changed while the write operation is in progress.  The "
2376 "buffer area being written out must not be accessed during the operation or "
2377 "undefined results may occur.  The memory areas involved must remain valid."
2378 msgstr ""
2379 "使用する前に制御ブロックを 0 にしておくのは、よい考えである。 この制御ブロッ"
2380 "クは、読み込み操作が進行している間は変更すべきでない。 読み込まれるバッファ領"
2381 "域は 操作の最中にアクセスすべきではない。 さもないと起こる結果が不定になる。 "
2382 "これに含まれるメモリ領域は、有効なままにしなければならない。"
2383
2384 #. type: Plain text
2385 #: build/C/man3/aio_write.3:158
2386 msgid ""
2387 "B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_read>(3), "
2388 "B<aio_return>(3), B<aio_suspend>(3), B<lio_listio>(3), B<aio>(7)"
2389 msgstr ""
2390 "B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_read>(3), "
2391 "B<aio_return>(3), B<aio_suspend>(3), B<lio_listio>(3), B<aio>(7)"
2392
2393 #. type: TH
2394 #: build/C/man2/io_cancel.2:23
2395 #, no-wrap
2396 msgid "IO_CANCEL"
2397 msgstr "IO_CANCEL"
2398
2399 #. type: TH
2400 #: build/C/man2/io_cancel.2:23 build/C/man2/io_destroy.2:23
2401 #: build/C/man2/io_setup.2:23 build/C/man2/io_submit.2:23
2402 #, no-wrap
2403 msgid "2008-06-18"
2404 msgstr "2008-06-18"
2405
2406 #. type: Plain text
2407 #: build/C/man2/io_cancel.2:26
2408 msgid "io_cancel - cancel an outstanding asynchronous I/O operation"
2409 msgstr "io_cancel - 未処理の非同期 I/O 操作の取り消し"
2410
2411 #.  .ad l
2412 #.  .hy 0
2413 #.  #include <linux/aio.h>
2414 #. type: Plain text
2415 #: build/C/man2/io_cancel.2:33 build/C/man2/io_destroy.2:32
2416 #: build/C/man2/io_setup.2:32 build/C/man2/io_submit.2:32
2417 #, no-wrap
2418 msgid "B<#include E<lt>libaio.hE<gt>>\n"
2419 msgstr "B<#include E<lt>libaio.hE<gt>>\n"
2420
2421 #.  .HP 16
2422 #.  .ad
2423 #.  .hy
2424 #. type: Plain text
2425 #: build/C/man2/io_cancel.2:39
2426 #, no-wrap
2427 msgid ""
2428 "B<int io_cancel(aio_context_t >I<ctx_id>B<, struct iocb *>I<iocb>B<,>\n"
2429 "B<              struct io_event *>I<result>B<);>\n"
2430 msgstr ""
2431 "B<int io_cancel(aio_context_t >I<ctx_id>B<, struct iocb *>I<iocb>B<,>\n"
2432 "B<              struct io_event *>I<result>B<);>\n"
2433
2434 #. type: Plain text
2435 #: build/C/man2/io_cancel.2:41 build/C/man2/io_destroy.2:39
2436 #: build/C/man2/io_getevents.2:42 build/C/man2/io_setup.2:39
2437 #: build/C/man2/io_submit.2:40
2438 #, no-wrap
2439 msgid "Link with I<-laio>.\n"
2440 msgstr "I<-laio> とリンクする。\n"
2441
2442 #. type: Plain text
2443 #: build/C/man2/io_cancel.2:51
2444 msgid ""
2445 "B<io_cancel>()  attempts to cancel an asynchronous I/O operation previously "
2446 "submitted with B<io_submit>(2).  I<ctx_id> is the AIO context ID of the "
2447 "operation to be canceled.  If the AIO context is found, the event will be "
2448 "canceled and then copied into the memory pointed to by I<result> without "
2449 "being placed into the completion queue."
2450 msgstr ""
2451 "B<io_cancel>()  は、過去に B<io_submit>(2)  を使って登録された非同期 I/O "
2452 "(AIO) 操作の取り消しを行おうとする。 I<ctx_id> は、取り消しを行う操作の AIO "
2453 "コンテキストの ID である。 指定した AIO コンテキストが見つかると、 対象のイベ"
2454 "ントの取り消しが行われ、その後 I<result> で指されたメモリに コピーされる (こ"
2455 "のとき、完了キューへの移動は行われない)。"
2456
2457 #. type: Plain text
2458 #: build/C/man2/io_cancel.2:56
2459 msgid ""
2460 "On success, B<io_cancel>()  returns 0.  For the failure return, see NOTES."
2461 msgstr ""
2462 "成功した場合、 B<io_cancel>()  は 0 を返す。 失敗時の返り値については、「注"
2463 "意」の節を参照すること。"
2464
2465 #. type: Plain text
2466 #: build/C/man2/io_cancel.2:60
2467 msgid "The I<iocb> specified was not canceled."
2468 msgstr "指定された I<iocb> の取り消しが行われなかった。"
2469
2470 #. type: TP
2471 #: build/C/man2/io_cancel.2:60 build/C/man2/io_destroy.2:54
2472 #: build/C/man2/io_getevents.2:61 build/C/man2/io_setup.2:58
2473 #: build/C/man2/io_submit.2:61
2474 #, no-wrap
2475 msgid "B<EFAULT>"
2476 msgstr "B<EFAULT>"
2477
2478 #. type: Plain text
2479 #: build/C/man2/io_cancel.2:63 build/C/man2/io_submit.2:64
2480 msgid "One of the data structures points to invalid data."
2481 msgstr "データ構造の中に無効なデータを指しているものがある。"
2482
2483 #. type: Plain text
2484 #: build/C/man2/io_cancel.2:66
2485 msgid "The AIO context specified by I<ctx_id> is invalid."
2486 msgstr "I<ctx_id> で指定された AIO コンテキストが無効である。"
2487
2488 #. type: Plain text
2489 #: build/C/man2/io_cancel.2:70
2490 msgid "B<io_cancel>()  is not implemented on this architecture."
2491 msgstr "B<io_cancel>()  はこのアーキテクチャでは実装されていない。"
2492
2493 #. type: Plain text
2494 #: build/C/man2/io_cancel.2:73 build/C/man2/io_destroy.2:67
2495 #: build/C/man2/io_getevents.2:80 build/C/man2/io_setup.2:76
2496 #: build/C/man2/io_submit.2:78
2497 msgid ""
2498 "The asynchronous I/O system calls first appeared in Linux 2.5, August 2002."
2499 msgstr "非同期 I/O システム・コールは 2002年8月に Linux 2.5 で初めて登場した。"
2500
2501 #. type: Plain text
2502 #: build/C/man2/io_cancel.2:78
2503 msgid ""
2504 "B<io_cancel>()  is Linux-specific and should not be used in programs that "
2505 "are intended to be portable."
2506 msgstr ""
2507 "B<io_cancel>()  は Linux 固有であり、移植を想定したプログラムで使用すべきでは"
2508 "ない。"
2509
2510 #. type: Plain text
2511 #: build/C/man2/io_cancel.2:80 build/C/man2/io_destroy.2:74
2512 #: build/C/man2/io_getevents.2:87 build/C/man2/io_setup.2:83
2513 #: build/C/man2/io_submit.2:85
2514 msgid "Glibc does not provide a wrapper function for this system call."
2515 msgstr "glibc はこのシステムコール用のラッパー関数を提供していない。"
2516
2517 #. type: Plain text
2518 #: build/C/man2/io_cancel.2:94
2519 msgid ""
2520 "The wrapper provided in I<libaio> for B<io_cancel>()  does not follow the "
2521 "usual C library conventions for indicating error: on error it returns a "
2522 "negated error number (the negative of one of the values listed in ERRORS).  "
2523 "If the system call is invoked via B<syscall>(2), then the return value "
2524 "follows the usual conventions for indicating an error: -1, with I<errno> set "
2525 "to a (positive) value that indicates the error."
2526 msgstr ""
2527 "I<libaio> で B<io_cancel>()  用に提供されているラッパー関数は、エラーの通知が"
2528 "通常の C ライブラリの 慣習にしたがっておらず、エラーの場合には負のエラー番号 "
2529 "(エラーの節に列挙されている値の一つを負にしたもの) が返り値となる。 "
2530 "B<syscall>(2)  経由でシステムコールを起動すると、返り値は通常のエラー通知の慣"
2531 "習に したがってものとなり、エラーの場合には -1 が返り、 I<errno> にエラーを示"
2532 "す (正の) 値が設定される。"
2533
2534 #.  .SH "NOTES"
2535 #.  .PP
2536 #.  The asynchronous I/O system calls were written by Benjamin LaHaise.
2537 #.  .SH AUTHOR
2538 #.  Kent Yoder.
2539 #. type: Plain text
2540 #: build/C/man2/io_cancel.2:107
2541 msgid ""
2542 "B<io_destroy>(2), B<io_getevents>(2), B<io_setup>(2), B<io_submit>(2), B<aio>"
2543 "(7)"
2544 msgstr ""
2545 "B<io_destroy>(2), B<io_getevents>(2), B<io_setup>(2), B<io_submit>(2), B<aio>"
2546 "(7)"
2547
2548 #. type: TH
2549 #: build/C/man2/io_destroy.2:23
2550 #, no-wrap
2551 msgid "IO_DESTROY"
2552 msgstr "IO_DESTROY"
2553
2554 #. type: Plain text
2555 #: build/C/man2/io_destroy.2:26
2556 msgid "io_destroy - destroy an asynchronous I/O context"
2557 msgstr "io_destroy - 非同期 I/O コンテキストの消去"
2558
2559 #.  .HP 17
2560 #.  .ad
2561 #.  .hy
2562 #. type: Plain text
2563 #: build/C/man2/io_destroy.2:37
2564 #, no-wrap
2565 msgid "B<int io_destroy(aio_context_t >I<ctx>B<);>\n"
2566 msgstr "B<int io_destroy(aio_context_t >I<ctx>B<);>\n"
2567
2568 #. type: Plain text
2569 #: build/C/man2/io_destroy.2:48
2570 msgid ""
2571 "B<io_destroy>()  removes the asynchronous I/O context from the list of I/O "
2572 "contexts and then destroys it.  B<io_destroy>()  can also cancel any "
2573 "outstanding asynchronous I/O actions on I<ctx> and block on completion."
2574 msgstr ""
2575 "B<io_destroy>()  は、I/O コンテキストのリストから指定された非同期 I/O コンテ"
2576 "キストを削除した後、そのコンテキストを消去する。 B<io_destroy>()  は、I<ctx> "
2577 "上に未処理の非同期 I/O 命令及び 完了キューのブロックの取り消しも行うことがで"
2578 "きる。"
2579
2580 #. type: Plain text
2581 #: build/C/man2/io_destroy.2:53
2582 msgid ""
2583 "On success, B<io_destroy>()  returns 0.  For the failure return, see NOTES."
2584 msgstr ""
2585 "成功した場合、 B<io_destroy>()  は 0 を返す。 失敗時の返り値については、「注"
2586 "意」の節を参照すること。"
2587
2588 #. type: Plain text
2589 #: build/C/man2/io_destroy.2:57
2590 msgid "The context pointed to is invalid."
2591 msgstr "データ構造の中に無効なデータを指しているものがある。"
2592
2593 #. type: Plain text
2594 #: build/C/man2/io_destroy.2:60
2595 msgid "The AIO context specified by I<ctx> is invalid."
2596 msgstr "I<ctx> で指定された AIO コンテキストが無効である。"
2597
2598 #. type: Plain text
2599 #: build/C/man2/io_destroy.2:64
2600 msgid "B<io_destroy>()  is not implemented on this architecture."
2601 msgstr "B<io_destroy>()  はこのアーキテクチャでは実装されていない。"
2602
2603 #. type: Plain text
2604 #: build/C/man2/io_destroy.2:72
2605 msgid ""
2606 "B<io_destroy>()  is Linux-specific and should not be used in programs that "
2607 "are intended to be portable."
2608 msgstr ""
2609 "B<io_destroy>()  は Linux 固有であり、移植を想定したプログラムで使用すべきで"
2610 "はない。"
2611
2612 #. type: Plain text
2613 #: build/C/man2/io_destroy.2:88
2614 msgid ""
2615 "The wrapper provided in I<libaio> for B<io_destroy>()  does not follow the "
2616 "usual C library conventions for indicating error: on error it returns a "
2617 "negated error number (the negative of one of the values listed in ERRORS).  "
2618 "If the system call is invoked via B<syscall>(2), then the return value "
2619 "follows the usual conventions for indicating an error: -1, with I<errno> set "
2620 "to a (positive) value that indicates the error."
2621 msgstr ""
2622 "I<libaio> で B<io_destroy>()  用に提供されているラッパー関数は、エラーの通知"
2623 "が通常の C ライブラリの 慣習にしたがっておらず、エラーの場合には負のエラー番"
2624 "号 (エラーの節に列挙されている値の一つを負にしたもの) が返り値となる。 "
2625 "B<syscall>(2)  経由でシステムコールを起動すると、返り値は通常のエラー通知の慣"
2626 "習に したがってものとなり、エラーの場合には -1 が返り、 I<errno> にエラーを示"
2627 "す (正の) 値が設定される。"
2628
2629 #.  .SH "NOTES"
2630 #.  .PP
2631 #.  The asynchronous I/O system calls were written by Benjamin LaHaise.
2632 #.  .SH AUTHOR
2633 #.  Kent Yoder.
2634 #. type: Plain text
2635 #: build/C/man2/io_destroy.2:101
2636 msgid ""
2637 "B<io_cancel>(2), B<io_getevents>(2), B<io_setup>(2), B<io_submit>(2), B<aio>"
2638 "(7)"
2639 msgstr ""
2640 "B<io_cancel>(2), B<io_getevents>(2), B<io_setup>(2), B<io_submit>(2), B<aio>"
2641 "(7)"
2642
2643 #. type: TH
2644 #: build/C/man2/io_getevents.2:23
2645 #, no-wrap
2646 msgid "IO_GETEVENTS"
2647 msgstr "IO_GETEVENTS"
2648
2649 #. type: TH
2650 #: build/C/man2/io_getevents.2:23
2651 #, no-wrap
2652 msgid "2008-07-04"
2653 msgstr "2008-07-04"
2654
2655 #. type: Plain text
2656 #: build/C/man2/io_getevents.2:26
2657 msgid "io_getevents - read asynchronous I/O events from the completion queue"
2658 msgstr "io_getevents - 完了キューから非同期 I/O イベントを読み出す"
2659
2660 #.  .ad l
2661 #.  .hy 0
2662 #.  #include <linux/aio.h>
2663 #. type: Plain text
2664 #: build/C/man2/io_getevents.2:33
2665 #, no-wrap
2666 msgid ""
2667 "B<#include E<lt>linux/time.hE<gt>>\n"
2668 "B<#include E<lt>libaio.hE<gt>>\n"
2669 msgstr ""
2670 "B<#include E<lt>linux/time.hE<gt>>\n"
2671 "B<#include E<lt>libaio.hE<gt>>\n"
2672
2673 #.  .HP 19
2674 #.  .ad
2675 #.  .hy
2676 #. type: Plain text
2677 #: build/C/man2/io_getevents.2:40
2678 #, no-wrap
2679 msgid ""
2680 "B<int io_getevents(aio_context_t >I<ctx_id>B<, long >I<min_nr>B<, long >I<nr>B<,>\n"
2681 "B<                 struct io_event *>I<events>B<, struct timespec *>I<timeout>B<);>\n"
2682 msgstr ""
2683 "B<int io_getevents(aio_context_t >I<ctx_id>B<, long >I<min_nr>B<, long >I<nr>B<,>\n"
2684 "B<                 struct io_event *>I<events>B<, struct timespec *>I<timeout>B<);>\n"
2685
2686 #. type: Plain text
2687 #: build/C/man2/io_getevents.2:54
2688 msgid ""
2689 "B<io_getevents>()  attempts to read at least I<min_nr> events and up to "
2690 "I<nr> events from the completion queue of the AIO context specified by "
2691 "I<ctx_id>.  I<timeout> specifies the amount of time to wait for events, "
2692 "where a NULL timeout waits until at least I<min_nr> events have been seen.  "
2693 "Note that I<timeout> is relative and will be updated if not NULL and the "
2694 "operation blocks."
2695 msgstr ""
2696 "B<io_getevents>()  は、少なくとも I<min_nr> の、最大 I<nr> 個の イベントを、 "
2697 "I<ctx_id> で指定された AIO (非同期 I/O) コンテキストの 完了キューから読み出そ"
2698 "うとする。 I<timeout> はイベント読み出しの待ち時間の合計を指定する。 タイムア"
2699 "ウトに NULL を指定した場合、少なくとも I<min_nr> 個のイベントが 読み出される"
2700 "まで待つことを意味する。 注意点を以下にあげる: I<timeout> は相対的な指定であ"
2701 "る。 NULL でない場合更新されることもありえる。 呼び出し元の動作は停止する。"
2702
2703 #. type: Plain text
2704 #: build/C/man2/io_getevents.2:60
2705 msgid ""
2706 "On success, B<io_getevents>()  returns the number of events read: 0 if no "
2707 "events are available, or less than I<min_nr> if the I<timeout> has elapsed.  "
2708 "For the failure return, see NOTES."
2709 msgstr ""
2710 "成功すると、 B<io_getevents>()  は読み出したイベント数を返す。 イベントが一つ"
2711 "も読み出されなかった場合は 0 が返され、 I<timeout> 時間が経過した場合は "
2712 "I<min_nr> 未満の値が返される。 失敗時の返り値については、「注意」の節を参照す"
2713 "ること。"
2714
2715 #. type: Plain text
2716 #: build/C/man2/io_getevents.2:64
2717 msgid "Either I<events> or I<timeout> is an invalid pointer."
2718 msgstr "I<events> または I<timeout> が無効なポインタである。"
2719
2720 #. type: Plain text
2721 #: build/C/man2/io_getevents.2:69
2722 msgid ""
2723 "I<ctx_id> is invalid.  I<min_nr> is out of range or I<nr> is out of range."
2724 msgstr ""
2725 "I<ctx_id> が無効である。もしくは、I<min_nr> または I<nr> が 範囲外の値であ"
2726 "る。"
2727
2728 #. type: Plain text
2729 #: build/C/man2/io_getevents.2:73
2730 msgid "Interrupted by a signal handler; see B<signal>(7)."
2731 msgstr "シグナルハンドラにより割り込まれた。 B<signal>(7)  参照。"
2732
2733 #. type: Plain text
2734 #: build/C/man2/io_getevents.2:77
2735 msgid "B<io_getevents>()  is not implemented on this architecture."
2736 msgstr "B<io_getevents>()  がこのアーキテクチャでは実装されていない。"
2737
2738 #. type: Plain text
2739 #: build/C/man2/io_getevents.2:85
2740 msgid ""
2741 "B<io_getevents>()  is Linux-specific and should not be used in programs that "
2742 "are intended to be portable."
2743 msgstr ""
2744 "B<io_getevents>()  は Linux 固有であり、移植を想定したプログラムで 使用すべき"
2745 "ではない。"
2746
2747 #. type: Plain text
2748 #: build/C/man2/io_getevents.2:101
2749 msgid ""
2750 "The wrapper provided in I<libaio> for B<io_getevents>()  does not follow the "
2751 "usual C library conventions for indicating error: on error it returns a "
2752 "negated error number (the negative of one of the values listed in ERRORS).  "
2753 "If the system call is invoked via B<syscall>(2), then the return value "
2754 "follows the usual conventions for indicating an error: -1, with I<errno> set "
2755 "to a (positive) value that indicates the error."
2756 msgstr ""
2757 "I<libaio> で B<io_getevents>()  用に提供されているラッパー関数は、エラーの通"
2758 "知が通常の C ライブラリの 慣習にしたがっておらず、エラーの場合には負のエラー"
2759 "番号 (エラーの節に列挙されている値の一つを負にしたもの) が返り値となる。 "
2760 "B<syscall>(2)  経由でシステムコールを起動すると、返り値は通常のエラー通知の慣"
2761 "習に したがってものとなり、エラーの場合には -1 が返り、 I<errno> にエラーを示"
2762 "す (正の) 値が設定される。"
2763
2764 #.  .SH "NOTES"
2765 #.  .PP
2766 #.  The asynchronous I/O system calls were written by Benjamin LaHaise.
2767 #.  .SH AUTHOR
2768 #.  Kent Yoder.
2769 #. type: Plain text
2770 #: build/C/man2/io_getevents.2:116
2771 msgid ""
2772 "B<io_cancel>(2), B<io_destroy>(2), B<io_setup>(2), B<io_submit>(2), B<aio>"
2773 "(7), B<time>(7)"
2774 msgstr ""
2775 "B<io_cancel>(2), B<io_destroy>(2), B<io_setup>(2), B<io_submit>(2), B<aio>"
2776 "(7), B<time>(7)"
2777
2778 #. type: TH
2779 #: build/C/man2/io_setup.2:23
2780 #, no-wrap
2781 msgid "IO_SETUP"
2782 msgstr "IO_SETUP"
2783
2784 #. type: Plain text
2785 #: build/C/man2/io_setup.2:26
2786 msgid "io_setup - create an asynchronous I/O context"
2787 msgstr "io_setup - 非同期 I/O コンテキストを作成する"
2788
2789 #.  .HP 15
2790 #.  .ad
2791 #.  .hy
2792 #. type: Plain text
2793 #: build/C/man2/io_setup.2:37
2794 #, no-wrap
2795 msgid "B<int io_setup(unsigned >I<nr_events>B<, aio_context_t *>I<ctxp>B<);>\n"
2796 msgstr "B<int io_setup(unsigned >I<nr_events>B<, aio_context_t *>I<ctxp>B<);>\n"
2797
2798 #. type: Plain text
2799 #: build/C/man2/io_setup.2:49
2800 msgid ""
2801 "B<io_setup>()  creates an asynchronous I/O context capable of receiving at "
2802 "least I<nr_events>.  I<ctxp> must not point to an AIO context that already "
2803 "exists, and must be initialized to 0 prior to the call.  On successful "
2804 "creation of the AIO context, I<*ctxp> is filled in with the resulting handle."
2805 msgstr ""
2806 "B<io_setup>()  は、少なくとも I<nr_events> 個のイベントを受信可能な 非同期 I/"
2807 "O (AIO) コンテキストの作成を行う。 I<ctxp> は、すでに存在する AIO コンテキス"
2808 "トを指していてはならず、 B<io_setup>()  の呼び出しの前に 0 に初期化されていな"
2809 "ければならない。 AIO コンテキストの作成に成功すると、I<*ctxp> に作成された "
2810 "AIO コンテキストへのポインタがセットされる。"
2811
2812 #. type: Plain text
2813 #: build/C/man2/io_setup.2:54
2814 msgid ""
2815 "On success, B<io_setup>()  returns 0.  For the failure return, see NOTES."
2816 msgstr ""
2817 "成功した場合、 B<io_setup>()  は 0 を返す。 失敗時の返り値については、「注"
2818 "意」の節を参照すること。"
2819
2820 #. type: Plain text
2821 #: build/C/man2/io_setup.2:58
2822 msgid ""
2823 "The specified I<nr_events> exceeds the user's limit of available events."
2824 msgstr ""
2825 "指定された I<nr_events> がユーザが使用できるイベント数の上限を越えている。"
2826
2827 #. type: Plain text
2828 #: build/C/man2/io_setup.2:61
2829 msgid "An invalid pointer is passed for I<ctxp>."
2830 msgstr "I<ctxp> に無効なポインタが指定されている。"
2831
2832 #. type: Plain text
2833 #: build/C/man2/io_setup.2:66
2834 msgid ""
2835 "I<ctxp> is not initialized, or the specified I<nr_events> exceeds internal "
2836 "limits.  I<nr_events> should be greater than 0."
2837 msgstr ""
2838 "I<ctxp> が初期化されていないか、指定された I<nr_events> が 内部の制限値を越え"
2839 "ている。また、 I<nr_events> は 0 より大きい値に 設定すべきである。"
2840
2841 #. type: TP
2842 #: build/C/man2/io_setup.2:66
2843 #, no-wrap
2844 msgid "B<ENOMEM>"
2845 msgstr "B<ENOMEM>"
2846
2847 #. type: Plain text
2848 #: build/C/man2/io_setup.2:69
2849 msgid "Insufficient kernel resources are available."
2850 msgstr "必要なカーネル・リソースを得られない。"
2851
2852 #. type: Plain text
2853 #: build/C/man2/io_setup.2:73
2854 msgid "B<io_setup>()  is not implemented on this architecture."
2855 msgstr "B<io_setup>()  がこのアーキテクチャでは実装されていない。"
2856
2857 #. type: Plain text
2858 #: build/C/man2/io_setup.2:81
2859 msgid ""
2860 "B<io_setup>()  is Linux-specific and should not be used in programs that are "
2861 "intended to be portable."
2862 msgstr ""
2863 "B<io_setup>()  は Linux 固有であり、移植を想定したプログラムで 使用すべきでは"
2864 "ない。"
2865
2866 #. type: Plain text
2867 #: build/C/man2/io_setup.2:97
2868 msgid ""
2869 "The wrapper provided in I<libaio> for B<io_setup>()  does not follow the "
2870 "usual C library conventions for indicating error: on error it returns a "
2871 "negated error number (the negative of one of the values listed in ERRORS).  "
2872 "If the system call is invoked via B<syscall>(2), then the return value "
2873 "follows the usual conventions for indicating an error: -1, with I<errno> set "
2874 "to a (positive) value that indicates the error."
2875 msgstr ""
2876 "I<libaio> で B<io_setup>()  用に提供されているラッパー関数は、エラーの通知が"
2877 "通常の C ライブラリの 慣習にしたがっておらず、エラーの場合には負のエラー番号 "
2878 "(エラーの節に列挙されている値の一つを負にしたもの) が返り値となる。 "
2879 "B<syscall>(2)  経由でシステムコールを起動すると、返り値は通常のエラー通知の慣"
2880 "習に したがってものとなり、エラーの場合には -1 が返り、 I<errno> にエラーを示"
2881 "す (正の) 値が設定される。"
2882
2883 #.  .SH "NOTES"
2884 #.  .PP
2885 #.  The asynchronous I/O system calls were written by Benjamin LaHaise.
2886 #.  .SH AUTHOR
2887 #.  Kent Yoder.
2888 #. type: Plain text
2889 #: build/C/man2/io_setup.2:108
2890 msgid ""
2891 "B<io_cancel>(2), B<io_destroy>(2), B<io_getevents>(2), B<io_submit>(2), "
2892 "B<aio>(7)"
2893 msgstr ""
2894 "B<io_cancel>(2), B<io_destroy>(2), B<io_getevents>(2), B<io_submit>(2), "
2895 "B<aio>(7)"
2896
2897 #. type: TH
2898 #: build/C/man2/io_submit.2:23
2899 #, no-wrap
2900 msgid "IO_SUBMIT"
2901 msgstr "IO_SUBMIT"
2902
2903 #. type: Plain text
2904 #: build/C/man2/io_submit.2:26
2905 msgid "io_submit - submit asynchronous I/O blocks for processing"
2906 msgstr "io_submit - 非同期 I/O ブロックを処理待ちキューに登録する"
2907
2908 #.  .HP 16
2909 #.  .ad
2910 #.  .hy
2911 #. type: Plain text
2912 #: build/C/man2/io_submit.2:38
2913 #, no-wrap
2914 msgid "B<int io_submit(aio_context_t >I<ctx_id>B<, long >I<nr>B<, struct iocb **>I<iocbpp>B<);>\n"
2915 msgstr "B<int io_submit(aio_context_t >I<ctx_id>B<, long >I<nr>B<, struct iocb **>I<iocbpp>B<);>\n"
2916
2917 #. type: Plain text
2918 #: build/C/man2/io_submit.2:48
2919 msgid ""
2920 "B<io_submit>()  queues I<nr> I/O request blocks for processing in the AIO "
2921 "context I<ctx_id>.  I<iocbpp> should be an array of I<nr> AIO control "
2922 "blocks, which will be submitted to context I<ctx_id>."
2923 msgstr ""
2924 "B<io_submit>()  は、AIO コンテキスト I<ctx_id> に I<nr> 個の I/O リクエストを"
2925 "処理待ちとしてキューに追加する。 I<iocbpp> は、AIO コンテキスト I<ctx_id> に"
2926 "登録される I<nr> 個の AIO 制御ブロックの配列になっていなければならない。"
2927
2928 #. type: Plain text
2929 #: build/C/man2/io_submit.2:54
2930 msgid ""
2931 "On success, B<io_submit>()  returns the number of I<iocb>s submitted (which "
2932 "may be 0 if I<nr> is zero).  For the failure return, see NOTES."
2933 msgstr ""
2934 "成功すると、 B<io_submit>()  は登録した I<iocb> の個数を返す (I<nr> が 0 の場"
2935 "合は 0 を返す)。 失敗時の返り値については、「注意」の節を参照すること。"
2936
2937 #. type: Plain text
2938 #: build/C/man2/io_submit.2:58
2939 msgid "Insufficient resources are available to queue any I<iocb>s."
2940 msgstr "何個かの I<iocb> をキューに入れるのに必要なリソースが得られない。"
2941
2942 #. type: Plain text
2943 #: build/C/man2/io_submit.2:61
2944 msgid "The file descriptor specified in the first I<iocb> is invalid."
2945 msgstr "先頭の I<iocb> に指定されたファイル・ディスクリプタが無効である。"
2946
2947 #. type: Plain text
2948 #: build/C/man2/io_submit.2:71
2949 msgid ""
2950 "The I<aio_context> specified by I<ctx_id> is invalid.  I<nr> is less than "
2951 "0.  The I<iocb> at *iocbpp[0] is not properly initialized, or the operation "
2952 "specified is invalid for the file descriptor in the I<iocb>."
2953 msgstr ""
2954 "I<ctx_id> で指定された I<aio_context> が無効である。 I<nr> が 0 未満である。 "
2955 "*iocbpp[0] の I<iocb> が適切に初期化されていないか、 指定された操作がその "
2956 "I<iocb> 中のファイル・ディスクリプタに対して 無効である。"
2957
2958 #. type: Plain text
2959 #: build/C/man2/io_submit.2:75
2960 msgid "B<io_submit>()  is not implemented on this architecture."
2961 msgstr "B<io_submit>()  はこのアーキテクチャでは実装されていない。"
2962
2963 #. type: Plain text
2964 #: build/C/man2/io_submit.2:83
2965 msgid ""
2966 "B<io_submit>()  is Linux-specific and should not be used in programs that "
2967 "are intended to be portable."
2968 msgstr ""
2969 "B<io_submit>()  は Linux 固有であり、移植を想定したプログラムで 使用すべきで"
2970 "はない。"
2971
2972 #. type: Plain text
2973 #: build/C/man2/io_submit.2:99
2974 msgid ""
2975 "The wrapper provided in I<libaio> for B<io_submit>()  does not follow the "
2976 "usual C library conventions for indicating error: on error it returns a "
2977 "negated error number (the negative of one of the values listed in ERRORS).  "
2978 "If the system call is invoked via B<syscall>(2), then the return value "
2979 "follows the usual conventions for indicating an error: -1, with I<errno> set "
2980 "to a (positive) value that indicates the error."
2981 msgstr ""
2982 "I<libaio> で B<io_submit>()  用に提供されているラッパー関数は、エラーの通知が"
2983 "通常の C ライブラリの 慣習にしたがっておらず、エラーの場合には負のエラー番号 "
2984 "(エラーの節に列挙されている値の一つを負にしたもの) が返り値となる。 "
2985 "B<syscall>(2)  経由でシステムコールを起動すると、返り値は通常のエラー通知の慣"
2986 "習に したがってものとなり、エラーの場合には -1 が返り、 I<errno> にエラーを示"
2987 "す (正の) 値が設定される。"
2988
2989 #.  .SH "NOTES"
2990 #.  .PP
2991 #.  The asynchronous I/O system calls were written by Benjamin LaHaise.
2992 #.  .SH AUTHOR
2993 #.  Kent Yoder.
2994 #. type: Plain text
2995 #: build/C/man2/io_submit.2:110
2996 msgid ""
2997 "B<io_cancel>(2), B<io_destroy>(2), B<io_getevents>(2), B<io_setup>(2), B<aio>"
2998 "(7)"
2999 msgstr ""
3000 "B<io_cancel>(2), B<io_destroy>(2), B<io_getevents>(2), B<io_setup>(2), B<aio>"
3001 "(7)"
3002
3003 #. type: TH
3004 #: build/C/man3/lio_listio.3:23
3005 #, no-wrap
3006 msgid "LIO_LISTIO"
3007 msgstr "LIO_LISTIO"
3008
3009 #. type: TH
3010 #: build/C/man3/lio_listio.3:23
3011 #, no-wrap
3012 msgid "2010-10-20"
3013 msgstr "2010-10-20"
3014
3015 #. type: Plain text
3016 #: build/C/man3/lio_listio.3:26
3017 msgid "lio_listio - initiate a list of I/O requests"
3018 msgstr ""
3019
3020 #. type: Plain text
3021 #: build/C/man3/lio_listio.3:32
3022 #, no-wrap
3023 msgid ""
3024 "B<int lio_listio(int >I<mode>B<, struct aiocb *const >I<aiocb_list>B<[],>\n"
3025 "B<               int >I<nitems>B<, struct sigevent *>I<sevp>B<);>\n"
3026 msgstr ""
3027 "B<int lio_listio(int >I<mode>B<, struct aiocb *const >I<aiocb_list>B<[],>\n"
3028 "B<               int >I<nitems>B<, struct sigevent *>I<sevp>B<);>\n"
3029
3030 #. type: Plain text
3031 #: build/C/man3/lio_listio.3:40
3032 msgid ""
3033 "The B<lio_listio>()  function initiates the list of I/O operations described "
3034 "by the array I<aiocb_list>."
3035 msgstr ""
3036
3037 #. type: Plain text
3038 #: build/C/man3/lio_listio.3:44
3039 msgid "The I<mode> operation has one of the following values:"
3040 msgstr ""
3041
3042 #. type: TP
3043 #: build/C/man3/lio_listio.3:44
3044 #, no-wrap
3045 msgid "B<LIO_WAIT>"
3046 msgstr "B<LIO_WAIT>"
3047
3048 #. type: Plain text
3049 #: build/C/man3/lio_listio.3:50
3050 msgid ""
3051 "The call blocks until all operations are complete.  The I<sevp> argument is "
3052 "ignored."
3053 msgstr ""
3054
3055 #. type: TP
3056 #: build/C/man3/lio_listio.3:50
3057 #, no-wrap
3058 msgid "B<LIO_NOWAIT>"
3059 msgstr "B<LIO_NOWAIT>"
3060
3061 #. type: Plain text
3062 #: build/C/man3/lio_listio.3:62
3063 msgid ""
3064 "The I/O operations are queued for processing and the call returns "
3065 "immediately.  When the I/O operations complete, asynchronous notification "
3066 "occurs, as specified by the I<sevp> argument; see B<sigevent>(7)  for "
3067 "details.  If I<sevp> is NULL, no asynchronous notification occurs."
3068 msgstr ""
3069
3070 #. type: Plain text
3071 #: build/C/man3/lio_listio.3:76
3072 msgid ""
3073 "The I<aiocb_list> argument is an array of pointers to I<aiocb> structures "
3074 "that describe I/O operations.  These operations are executed in an "
3075 "unspecified order.  The I<nitems> argument specifies the size of the array "
3076 "I<aiocb_list>.  NULL pointers in I<aiocb_list> are ignored."
3077 msgstr ""
3078
3079 #. type: Plain text
3080 #: build/C/man3/lio_listio.3:82
3081 msgid ""
3082 "In each control block in I<aiocb_list>, the I<aio_lio_opcode> field "
3083 "specifies the I/O operation to be initiated, as follows:"
3084 msgstr ""
3085
3086 #. type: TP
3087 #: build/C/man3/lio_listio.3:82
3088 #, no-wrap
3089 msgid "B<LIO_READ>"
3090 msgstr "B<LIO_READ>"
3091
3092 #. type: Plain text
3093 #: build/C/man3/lio_listio.3:88
3094 msgid ""
3095 "Initiate a read operation.  The operation is queued as for a call to "
3096 "B<aio_read>(3)  specifying this control block."
3097 msgstr ""
3098
3099 #. type: TP
3100 #: build/C/man3/lio_listio.3:88
3101 #, no-wrap
3102 msgid "B<LIO_WRITE>"
3103 msgstr "B<LIO_WRITE>"
3104
3105 #. type: Plain text
3106 #: build/C/man3/lio_listio.3:94
3107 msgid ""
3108 "Initiate a write operation.  The operation is queued as for a call to "
3109 "B<aio_write>(3)  specifying this control block."
3110 msgstr ""
3111
3112 #. type: TP
3113 #: build/C/man3/lio_listio.3:94
3114 #, no-wrap
3115 msgid "B<LIO_NOP>"
3116 msgstr "B<LIO_NOP>"
3117
3118 #. type: Plain text
3119 #: build/C/man3/lio_listio.3:97
3120 msgid "Ignore this control block."
3121 msgstr ""
3122
3123 #. type: Plain text
3124 #: build/C/man3/lio_listio.3:107
3125 msgid ""
3126 "The remaining fields in each control block have the same meanings as for "
3127 "B<aio_read>(3)  and B<aio_write>(3).  The I<aio_sigevent> fields of each "
3128 "control block can be used to specify notifications for the individual I/O "
3129 "operations (see B<sigevent>(7))."
3130 msgstr ""
3131
3132 #. type: Plain text
3133 #: build/C/man3/lio_listio.3:117
3134 msgid ""
3135 "If I<mode> is B<LIO_NOWAIT>, B<lio_listio>()  returns 0 if all I/O "
3136 "operations are successfully queued.  Otherwise, -1 is returned, and I<errno> "
3137 "is set to indicate the error."
3138 msgstr ""
3139
3140 #. type: Plain text
3141 #: build/C/man3/lio_listio.3:127
3142 msgid ""
3143 "If I<mode> is B<LIO_WAIT>, B<lio_listio>()  returns 0 when all of the I/O "
3144 "operations have completed successfully.  Otherwise, -1 is returned, and "
3145 "I<errno> is set to indicate the error."
3146 msgstr ""
3147
3148 #. type: Plain text
3149 #: build/C/man3/lio_listio.3:145
3150 msgid ""
3151 "The return status from B<lio_listio>()  provides information only about the "
3152 "call itself, not about the individual I/O operations.  One or more of the I/"
3153 "O operations may fail, but this does not prevent other operations "
3154 "completing.  The status of individual I/O operations in I<aiocb_list> can be "
3155 "determined using B<aio_error>(3).  When an operation has completed, its "
3156 "return status can be obtained using B<aio_return>(3).  Individual I/O "
3157 "operations can fail for the reasons described in B<aio_read>(3)  and "
3158 "B<aio_write>(3)."
3159 msgstr ""
3160
3161 #. type: Plain text
3162 #: build/C/man3/lio_listio.3:149
3163 msgid "The B<lio_listio>()  function may fail for the following reasons:"
3164 msgstr ""
3165
3166 #.  Doesn't happen in glibc(?)
3167 #. type: Plain text
3168 #: build/C/man3/lio_listio.3:160
3169 msgid ""
3170 "The number of I/O operations specified by I<nitems> would cause the limit "
3171 "B<AIO_MAX> to be exceeded."
3172 msgstr ""
3173
3174 #.  Doesn't happen in glibc(?)
3175 #. type: Plain text
3176 #: build/C/man3/lio_listio.3:168
3177 msgid "I<mode> is invalid, or I<nitems> exceeds the limit B<AIO_LISTIO_MAX>."
3178 msgstr ""
3179
3180 #. type: Plain text
3181 #: build/C/man3/lio_listio.3:177
3182 msgid ""
3183 "I<mode> was B<LIO_WAIT> and a signal was caught before all I/O operations "
3184 "completed.  (This may even be one of the signals used for asynchronous I/O "
3185 "completion notification.)"
3186 msgstr ""
3187
3188 #. type: TP
3189 #: build/C/man3/lio_listio.3:177
3190 #, no-wrap
3191 msgid "B<EIO>"
3192 msgstr "B<EIO>"
3193
3194 #.  e.g., ioa_reqprio or aio_lio_opcode was invalid
3195 #. type: Plain text
3196 #: build/C/man3/lio_listio.3:185
3197 msgid ""
3198 "One of more of the operations specified by I<aiocb_list> failed.  The "
3199 "application can check the status of each operation using B<aio_return>(3)."
3200 msgstr ""
3201
3202 #. type: Plain text
3203 #: build/C/man3/lio_listio.3:200
3204 msgid ""
3205 "If B<lio_listio>()  fails with the error B<EAGAIN>, B<EINTR>, or B<EIO>, "
3206 "then some of the operations in I<aiocb_list> may have been initiated.  If "
3207 "B<lio_listio>()  fails for any other reason, then none of the I/O operations "
3208 "has been initiated."
3209 msgstr ""
3210
3211 #. type: Plain text
3212 #: build/C/man3/lio_listio.3:204
3213 msgid "The B<lio_listio>()  function is available since glibc 2.1."
3214 msgstr "The B<lio_listio>() 関数は glibc 2.1 以降で利用できる。"
3215
3216 #.  or the control block of the operation
3217 #. type: Plain text
3218 #: build/C/man3/lio_listio.3:214
3219 msgid ""
3220 "It is a good idea to zero out the control blocks before use.  The control "
3221 "blocks must not be changed while the I/O operations are in progress.  The "
3222 "buffer areas being read into or written from must not be accessed during the "
3223 "operations or undefined results may occur.  The memory areas involved must "
3224 "remain valid."
3225 msgstr ""
3226
3227 #. type: Plain text
3228 #: build/C/man3/lio_listio.3:226
3229 msgid ""
3230 "B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_return>(3), "
3231 "B<aio_suspend>(3), B<aio_write>(3), B<aio>(7)"
3232 msgstr ""
3233 "B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_return>(3), "
3234 "B<aio_suspend>(3), B<aio_write>(3), B<aio>(7)"
3235
3236 #~ msgid ""
3237 #~ "This function returns B<AIO_CANCELED> if all requests were successfully "
3238 #~ "canceled.  It returns B<AIO_NOTCANCELED> when at least one of the "
3239 #~ "requests specified was not canceled because it was in progress.  In this "
3240 #~ "case one may check the status of individual requests using B<aio_error>"
3241 #~ "(3).  This function returns B<AIO_ALLDONE> if all requests had already "
3242 #~ "been completed before this call.  When some error occurs, -1 is returned, "
3243 #~ "and I<errno> is set appropriately."
3244 #~ msgstr ""
3245 #~ "全てのリクエストのキャンセルが成功した場合、この関数は B<AIO_CANCELED> を"
3246 #~ "返す。 指定されたリクエストのうち少なくとも 1 つが進行中であるために キャ"
3247 #~ "ンセルできなかった場合は、 B<AIO_NOTCANCELED> が返される。 この場合は、 "
3248 #~ "B<aio_error>(3)  を使って個々のリクエストの状態をチェックすることができ"
3249 #~ "る。 呼び出される前に全てのリクエストが完了していた場合、 この関数は "
3250 #~ "B<AIO_ALLDONE> を返す。 何らかのエラーが起こった場合は、-1 が返されて、 "
3251 #~ "I<errno> が適切に設定される。"
3252
3253 #~ msgid ""
3254 #~ "This function returns B<EINPROGRESS> if the request has not been "
3255 #~ "completed yet.  It returns B<ECANCELED> if the request was canceled.  It "
3256 #~ "returns 0 if the request completed successfully.  Otherwise an error "
3257 #~ "value is returned, the same value that would have been stored in the "
3258 #~ "I<errno> variable in case of a synchronous I<read>, I<write>, I<fsync>, "
3259 #~ "or I<fdatasync> request.  On error, the error value is returned."
3260 #~ msgstr ""
3261 #~ "リクエストがまだ完了していない場合、この関数は B<EINPROGRESS> を返す。リク"
3262 #~ "エストがキャンセルされた場合、この関数は B<ECANCELED> を返す。リクエストが"
3263 #~ "成功して完了した場合、この関数は 0 を返す。 それ以外の場合はエラー値が返さ"
3264 #~ "れる。 このエラー値は、同期 I<read>, I<write>, I<fsync>, I<fdatasync> リク"
3265 #~ "エストの場合に I<errno> に格納されるのと同じ値である。 エラーの場合はエ"
3266 #~ "ラー値が返される。"
3267
3268 #~ msgid ""
3269 #~ "The B<aio_read>()  function requests an asynchronous \"n = read(fd, buf, "
3270 #~ "count)\" with fd, buf, count given by I<aiocbp-E<gt>aio_fildes>, I<aiocbp-"
3271 #~ "E<gt>aio_buf>, I<aiocbp-E<gt>aio_nbytes>, respectively.  The return "
3272 #~ "status n can be retrieved upon completion using B<aio_return>(3)."
3273 #~ msgstr ""
3274 #~ "B<aio_read>()  関数は非同期の \"n = read(fd, buf, count)\" をリクエストす"
3275 #~ "る。 ここで fd, buf, count は、それぞれ I<aiocbp-E<gt>aio_fildes>, "
3276 #~ "I<aiocbp-E<gt>aio_buf>, I<aiocbp-E<gt>aio_nbytes> で与えられる。 返り値 "
3277 #~ "(return status) n は、完了時に B<aio_return>(3)  を使って取得できる。"
3278
3279 #~ msgid ""
3280 #~ "The B<aio_suspend>()  function suspends the calling process until at "
3281 #~ "least one of the asynchronous I/O requests in the list I<cblist> of "
3282 #~ "length I<n> have completed, a signal is delivered, or I<timeout> is not "
3283 #~ "NULL and the time interval it indicates has passed."
3284 #~ msgstr ""
3285 #~ "B<aio_suspend>()  関数は、長さ I<n> のリスト I<cblist> に含まれる非同期 I/"
3286 #~ "O リクエストのうち少なくとも 1 つが完了するか、 シグナルが配送されるか、 "
3287 #~ "I<timeout> が NULL でなく、かつその時間が過ぎるまで、 呼び出したプロセスを"
3288 #~ "停止 (suspend) する。"
3289
3290 #~ msgid ""
3291 #~ "The B<aio_write>()  function requests an asynchronous \"n = write(fd, "
3292 #~ "buf, count)\" with fd, buf, count given by I<aiocbp-E<gt>aio_fildes>, "
3293 #~ "I<aiocbp-E<gt>aio_buf>, I<aiocbp-E<gt>aio_nbytes>, respectively.  The "
3294 #~ "return status n can be retrieved upon completion using B<aio_return>(3)."
3295 #~ msgstr ""
3296 #~ "B<aio_write>()  関数は非同期の \"n = write(fd, buf, count)\" をリクエスト"
3297 #~ "する。 ここで fd, buf, count は、それぞれ I<aiocbp-E<gt>aio_fildes>, "
3298 #~ "I<aiocbp-E<gt>aio_buf>, I<aiocbp-E<gt>aio_nbytes> で与えられる。 返り値 "
3299 #~ "(return status) n は、完了時に B<aio_return>(3)  を使って取得できる。"