OSDN Git Service

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