OSDN Git Service

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