OSDN Git Service

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