OSDN Git Service

(split) LDP: Update POT and ja.po to LDP v3.38.
[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-04-23 07:51+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 #, fuzzy
1133 #| msgid ""
1134 #| "This page is part of release 3.37 of the Linux I<man-pages> project.  A "
1135 #| "description of the project, and information about reporting bugs, can be "
1136 #| "found at http://www.kernel.org/doc/man-pages/."
1137 msgid ""
1138 "This page is part of release 3.38 of the Linux I<man-pages> project.  A "
1139 "description of the project, and information about reporting bugs, can be "
1140 "found at http://www.kernel.org/doc/man-pages/."
1141 msgstr ""
1142 "この man ページは Linux I<man-pages> プロジェクトのリリース 3.37 の一部であ"
1143 "る。\n"
1144 "プロジェクトの説明とバグ報告に関する情報は\n"
1145 "http://www.kernel.org/doc/man-pages/ に書かれている。"
1146
1147 #. type: TH
1148 #: build/C/man3/aio_cancel.3:23
1149 #, no-wrap
1150 msgid "AIO_CANCEL"
1151 msgstr "AIO_CANCEL"
1152
1153 #. type: TH
1154 #: build/C/man3/aio_cancel.3:23
1155 #, fuzzy, no-wrap
1156 #| msgid "2010-10-02"
1157 msgid "2011-10-04"
1158 msgstr "2010-10-02"
1159
1160 #. type: Plain text
1161 #: build/C/man3/aio_cancel.3:26
1162 msgid "aio_cancel - cancel an outstanding asynchronous I/O request"
1163 msgstr "aio_cancel - 完了していない非同期 I/O リクエストをキャンセルする"
1164
1165 #. type: SH
1166 #: build/C/man3/aio_cancel.3:26 build/C/man3/aio_error.3:26
1167 #: build/C/man3/aio_fsync.3:26 build/C/man3/aio_init.3:27
1168 #: build/C/man3/aio_read.3:26 build/C/man3/aio_return.3:26
1169 #: build/C/man3/aio_suspend.3:27 build/C/man3/aio_write.3:26
1170 #: build/C/man2/io_cancel.2:26 build/C/man2/io_destroy.2:26
1171 #: build/C/man2/io_getevents.2:26 build/C/man2/io_setup.2:26
1172 #: build/C/man2/io_submit.2:26 build/C/man3/lio_listio.3:26
1173 #, no-wrap
1174 msgid "SYNOPSIS"
1175 msgstr "書式"
1176
1177 #. type: Plain text
1178 #: build/C/man3/aio_cancel.3:28 build/C/man3/aio_error.3:28
1179 #: build/C/man3/aio_fsync.3:28 build/C/man3/aio_read.3:28
1180 #: build/C/man3/aio_return.3:28 build/C/man3/aio_write.3:28
1181 msgid "B<#include E<lt>aio.hE<gt>>"
1182 msgstr "B<#include E<lt>aio.hE<gt>>"
1183
1184 #. type: Plain text
1185 #: build/C/man3/aio_cancel.3:30
1186 msgid "B<int aio_cancel(int >I<fd>B<, struct aiocb *>I<aiocbp>B<);>"
1187 msgstr "B<int aio_cancel(int >I<fd>B<, struct aiocb *>I<aiocbp>B<);>"
1188
1189 #. type: Plain text
1190 #: build/C/man3/aio_cancel.3:32 build/C/man3/aio_error.3:32
1191 #: build/C/man3/aio_fsync.3:32 build/C/man3/aio_init.3:36
1192 #: build/C/man3/aio_read.3:32 build/C/man3/aio_return.3:32
1193 #: build/C/man3/aio_write.3:32
1194 msgid "Link with I<-lrt>."
1195 msgstr "I<-lrt> でリンクする。"
1196
1197 #. type: Plain text
1198 #: build/C/man3/aio_cancel.3:50
1199 #, fuzzy
1200 #| msgid ""
1201 #| "The B<aio_cancel>()  function attempts to cancel outstanding asynchronous "
1202 #| "I/O requests for the file descriptor I<fd>.  If I<aiocbp> is NULL, all "
1203 #| "such requests are canceled.  Otherwise, only the request described by the "
1204 #| "control block pointed to by I<aiocbp> is canceled."
1205 msgid ""
1206 "The B<aio_cancel>()  function attempts to cancel outstanding asynchronous I/"
1207 "O requests for the file descriptor I<fd>.  If I<aiocbp> is NULL, all such "
1208 "requests are canceled.  Otherwise, only the request described by the control "
1209 "block pointed to by I<aiocbp> is canceled.  (See B<aio>(7)  for a "
1210 "description of the I<aiocb> structure.)"
1211 msgstr ""
1212 "B<aio_cancel>()  関数は、ファイルディスクリプタ I<fd> についての完了していな"
1213 "い非同期 I/O リクエストをキャンセルしようとする。 I<aiocbp> が NULL の場合、"
1214 "そのような全てのリクエストがキャンセルされる。 I<aiocbp> が NULL でない場"
1215 "合、 I<aiocbp> で指された制御ブロックで記述されたリクエストのみがキャンセルさ"
1216 "れる。"
1217
1218 #. type: Plain text
1219 #: build/C/man3/aio_cancel.3:59
1220 #, fuzzy
1221 #| msgid ""
1222 #| "Normal asynchronous notification occurs for canceled requests.  The "
1223 #| "request return status is set to -1, and the request error status is set "
1224 #| "to B<ECANCELED>.  The control block of requests that cannot be canceled "
1225 #| "is not changed."
1226 msgid ""
1227 "Normal asynchronous notification occurs for canceled requests.  The request "
1228 "return status (B<aio_return>(3))  is set to -1, and the request error status "
1229 "(B<aio_error>(3))  is set to B<ECANCELED>.  The control block of requests "
1230 "that cannot be canceled is not changed."
1231 msgstr ""
1232 "キャンセルされたリクエストに対して、通常の非同期通知が起こる。 リクエストの返"
1233 "り値は -1 に設定され、 リクエストのエラー状態は B<ECANCELED> に設定される。 "
1234 "キャンセルできなかったリクエストの制御ブロックは変更されない。"
1235
1236 #. type: Plain text
1237 #: build/C/man3/aio_cancel.3:66
1238 msgid ""
1239 "If I<aiocbp> is not NULL, and I<fd> differs from the file descriptor with "
1240 "which the asynchronous operation was initiated, unspecified results occur."
1241 msgstr ""
1242 "I<aiocbp> が NULL でなく、かつ I<fd> が非同期操作が開始されたファイルディスク"
1243 "リプタと異なる場合、 生じる結果は不定である。"
1244
1245 #.  FreeBSD: not those on raw disk devices.
1246 #. type: Plain text
1247 #: build/C/man3/aio_cancel.3:69
1248 #, fuzzy
1249 #| msgid "Which operations are cancellable is implementation-defined."
1250 msgid "Which operations are cancelable is implementation-defined."
1251 msgstr "どの操作をキャンセルできるかは、実装定義である。"
1252
1253 #. type: SH
1254 #: build/C/man3/aio_cancel.3:69 build/C/man3/aio_error.3:43
1255 #: build/C/man3/aio_fsync.3:72 build/C/man3/aio_read.3:87
1256 #: build/C/man3/aio_return.3:48 build/C/man3/aio_suspend.3:79
1257 #: build/C/man3/aio_write.3:94 build/C/man2/io_cancel.2:51
1258 #: build/C/man2/io_destroy.2:48 build/C/man2/io_getevents.2:54
1259 #: build/C/man2/io_setup.2:49 build/C/man2/io_submit.2:48
1260 #: build/C/man3/lio_listio.3:107
1261 #, no-wrap
1262 msgid "RETURN VALUE"
1263 msgstr "返り値"
1264
1265 #. type: Plain text
1266 #: build/C/man3/aio_cancel.3:87
1267 #, fuzzy
1268 #| msgid ""
1269 #| "This function returns B<AIO_CANCELED> if all requests were successfully "
1270 #| "canceled.  It returns B<AIO_NOTCANCELED> when at least one of the "
1271 #| "requests specified was not canceled because it was in progress.  In this "
1272 #| "case one may check the status of individual requests using B<aio_error>"
1273 #| "(3).  This function returns B<AIO_ALLDONE> when all requests had been "
1274 #| "completed already before this call.  When some error occurs, -1 is "
1275 #| "returned, and I<errno> is set appropriately."
1276 msgid ""
1277 "This function returns B<AIO_CANCELED> if all requests were successfully "
1278 "canceled.  It returns B<AIO_NOTCANCELED> when at least one of the requests "
1279 "specified was not canceled because it was in progress.  In this case one may "
1280 "check the status of individual requests using B<aio_error>(3).  This "
1281 "function returns B<AIO_ALLDONE> if all requests had already been completed "
1282 "before this call.  When some error occurs, -1 is returned, and I<errno> is "
1283 "set appropriately."
1284 msgstr ""
1285 "全てのリクエストのキャンセルが成功した場合、この関数は B<AIO_CANCELED> を返"
1286 "す。 指定されたリクエストのうち少なくとも 1 つが進行中であるために キャンセル"
1287 "できなかった場合は、 B<AIO_NOTCANCELED> が返される。 この場合は、 "
1288 "B<aio_error>(3)  を使って個々のリクエストの状態をチェックすることができる。 "
1289 "呼び出される前に全てのリクエストが完了していた場合、 この関数は "
1290 "B<AIO_ALLDONE> を返す。 何らかのエラーが起こった場合は、-1 が返されて、 "
1291 "I<errno> が適切に設定される。"
1292
1293 #. type: TP
1294 #: build/C/man3/aio_cancel.3:88 build/C/man3/aio_fsync.3:82
1295 #: build/C/man3/aio_read.3:106 build/C/man3/aio_write.3:113
1296 #: build/C/man2/io_submit.2:58
1297 #, no-wrap
1298 msgid "B<EBADF>"
1299 msgstr "B<EBADF>"
1300
1301 #. type: Plain text
1302 #: build/C/man3/aio_cancel.3:92
1303 msgid "I<fd> is not a valid file descriptor."
1304 msgstr "I<fd> が有効なファイルディスクリプタでない。"
1305
1306 #. type: Plain text
1307 #: build/C/man3/aio_cancel.3:96
1308 msgid "The B<aio_cancel>()  function is available since glibc 2.1."
1309 msgstr ""
1310
1311 #. type: Plain text
1312 #: build/C/man3/aio_cancel.3:101 build/C/man3/aio_error.3:82
1313 #: build/C/man3/aio_read.3:147 build/C/man3/aio_return.3:77
1314 #, fuzzy
1315 #| msgid "B<aio>(7)"
1316 msgid "See B<aio>(7)."
1317 msgstr "B<aio>(7)"
1318
1319 #. type: Plain text
1320 #: build/C/man3/aio_cancel.3:110
1321 #, fuzzy
1322 #| msgid ""
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 msgid ""
1326 "B<aio_error>(3), B<aio_fsync>(3), B<aio_read>(3), B<aio_return>(3), "
1327 "B<aio_suspend>(3), B<aio_write>(3), B<lio_listio>(3), B<aio>(7)"
1328 msgstr ""
1329 "B<aio_error>(3), B<aio_fsync>(3), B<aio_read>(3), B<aio_return>(3), "
1330 "B<aio_suspend>(3), B<aio_write>(3)"
1331
1332 #. type: TH
1333 #: build/C/man3/aio_error.3:23
1334 #, no-wrap
1335 msgid "AIO_ERROR"
1336 msgstr "AIO_ERROR"
1337
1338 #. type: TH
1339 #: build/C/man3/aio_error.3:23 build/C/man3/aio_read.3:23
1340 #: build/C/man3/aio_return.3:23
1341 #, fuzzy, no-wrap
1342 #| msgid "2010-10-02"
1343 msgid "2010-10-03"
1344 msgstr "2010-10-02"
1345
1346 #. type: Plain text
1347 #: build/C/man3/aio_error.3:26
1348 msgid "aio_error - get error status of asynchronous I/O operation"
1349 msgstr "aio_error - 非同期 I/O 操作のエラー状態を取得する"
1350
1351 #. type: Plain text
1352 #: build/C/man3/aio_error.3:30
1353 msgid "B<int aio_error(const struct aiocb *>I<aiocbp>B<);>"
1354 msgstr "B<int aio_error(const struct aiocb *>I<aiocbp>B<);>"
1355
1356 #. type: Plain text
1357 #: build/C/man3/aio_error.3:43
1358 #, fuzzy
1359 #| msgid ""
1360 #| "The B<aio_error>()  function returns the error status for the "
1361 #| "asynchronous I/O request with control block pointed to by I<aiocbp>."
1362 msgid ""
1363 "The B<aio_error>()  function returns the error status for the asynchronous I/"
1364 "O request with control block pointed to by I<aiocbp>.  (See B<aio>(7)  for a "
1365 "description of the I<aiocb> structure.)"
1366 msgstr ""
1367 "B<aio_error>()  関数は I<aiocbp> で指された制御ブロックでの非同期 I/O リクエ"
1368 "ストのエラー状態を返す。"
1369
1370 #. type: Plain text
1371 #: build/C/man3/aio_error.3:45
1372 msgid "This function returns one of the following:"
1373 msgstr ""
1374
1375 #. type: IP
1376 #: build/C/man3/aio_error.3:45 build/C/man3/aio_error.3:49
1377 #: build/C/man3/aio_error.3:52 build/C/man3/aio_error.3:54
1378 #: build/C/man3/aio_suspend.3:42 build/C/man3/aio_suspend.3:46
1379 #: build/C/man3/aio_suspend.3:48
1380 #, no-wrap
1381 msgid "*"
1382 msgstr ""
1383
1384 #. type: Plain text
1385 #: build/C/man3/aio_error.3:49
1386 msgid "B<EINPROGRESS>, if the request has not been completed yet."
1387 msgstr ""
1388
1389 #. type: Plain text
1390 #: build/C/man3/aio_error.3:52
1391 msgid "B<ECANCELED>, if the request was canceled."
1392 msgstr ""
1393
1394 #. type: Plain text
1395 #: build/C/man3/aio_error.3:54
1396 msgid "0, if the request completed successfully."
1397 msgstr ""
1398
1399 #. type: Plain text
1400 #: build/C/man3/aio_error.3:65
1401 msgid ""
1402 "A positive error, if the asynchronous I/O operation failed.  This is the "
1403 "same value that would have been stored in the I<errno> variable in the case "
1404 "of a synchronous B<read>(2), B<write>(2), B<fsync>(2), or B<fdatasync>(2)  "
1405 "call."
1406 msgstr ""
1407
1408 #. type: Plain text
1409 #: build/C/man3/aio_error.3:73
1410 msgid ""
1411 "I<aiocbp> does not point at a control block for an asynchronous I/O request "
1412 "of which the return status (see B<aio_return>(3))  has not been retrieved "
1413 "yet."
1414 msgstr ""
1415 "I<aiocbp> が、まだ返り値 (return status)  (B<aio_return>(3)  を参照) が取得さ"
1416 "れていない非同期 I/O リクエストの制御ブロックを指していない。"
1417
1418 #. type: Plain text
1419 #: build/C/man3/aio_error.3:77
1420 msgid "The B<aio_error>()  function is available since glibc 2.1."
1421 msgstr ""
1422
1423 #. type: Plain text
1424 #: build/C/man3/aio_error.3:91
1425 #, fuzzy
1426 #| msgid ""
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 msgid ""
1430 "B<aio_cancel>(3), B<aio_fsync>(3), B<aio_read>(3), B<aio_return>(3), "
1431 "B<aio_suspend>(3), B<aio_write>(3), B<lio_listio>(3), B<aio>(7)"
1432 msgstr ""
1433 "B<aio_cancel>(3), B<aio_fsync>(3), B<aio_read>(3), B<aio_return>(3), "
1434 "B<aio_suspend>(3), B<aio_write>(3)"
1435
1436 #. type: TH
1437 #: build/C/man3/aio_fsync.3:23
1438 #, no-wrap
1439 msgid "AIO_FSYNC"
1440 msgstr "AIO_FSYNC"
1441
1442 #. type: Plain text
1443 #: build/C/man3/aio_fsync.3:26
1444 msgid "aio_fsync - asynchronous file synchronization"
1445 msgstr "aio_fsync - 非同期ファイルを同期させる"
1446
1447 #. type: Plain text
1448 #: build/C/man3/aio_fsync.3:30
1449 msgid "B<int aio_fsync(int >I<op>B<, struct aiocb *>I<aiocbp>B<);>"
1450 msgstr "B<int aio_fsync(int >I<op>B<, struct aiocb *>I<aiocbp>B<);>"
1451
1452 #. type: Plain text
1453 #: build/C/man3/aio_fsync.3:43
1454 #, fuzzy
1455 #| msgid ""
1456 #| "The B<aio_fsync>()  function does a sync on all outstanding asynchronous "
1457 #| "I/O operations associated with I<aiocbp-E<gt>aio_fildes>."
1458 msgid ""
1459 "The B<aio_fsync>()  function does a sync on all outstanding asynchronous I/O "
1460 "operations associated with I<aiocbp-E<gt>aio_fildes>.  (See B<aio>(7)  for a "
1461 "description of the I<aiocb> structure.)"
1462 msgstr ""
1463 "B<aio_fsync>()  関数は、 I<aiocbp-E<gt>aio_fildes> で関連付けられているまだ完"
1464 "了していない全ての非同期 I/O 操作を同期させる。"
1465
1466 #. type: Plain text
1467 #: build/C/man3/aio_fsync.3:57
1468 #, fuzzy
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 "
1472 #| "I<op> is B<O_DSYNC>, this call is the asynchronous analog of B<fdatasync>"
1473 #| "(2).  Note that this is a request only \\(em this call does not wait for "
1474 #| "I/O completion."
1475 msgid ""
1476 "More precisely, if I<op> is B<O_SYNC>, then all currently queued I/O "
1477 "operations shall be completed as if by a call of B<fsync>(2), and if I<op> "
1478 "is B<O_DSYNC>, this call is the asynchronous analog of B<fdatasync>(2)."
1479 msgstr ""
1480 "より正確に言うと、 I<op> が B<O_SYNC> の場合、現在キューに入れられている全て"
1481 "の I/O 操作は、 B<fsync>(2)  が呼ばれたかのように完了されるだろう。 また "
1482 "I<op> が B<O_DSYNC> の場合、この呼び出しは B<fdatasync>(2)  の非同期版とな"
1483 "る。 この関数はリクエストを行うだけである点に注意すること \\(em この呼び出し"
1484 "は I/O の完了を待たない。"
1485
1486 #. type: Plain text
1487 #: build/C/man3/aio_fsync.3:59
1488 msgid "Note that this is a request only; it does not wait for I/O completion."
1489 msgstr ""
1490
1491 #. type: Plain text
1492 #: build/C/man3/aio_fsync.3:72
1493 #, fuzzy
1494 #| msgid ""
1495 #| "Apart from I<aio_fildes> the only field in the structure pointed to by "
1496 #| "I<aiocbp> that is used by this call is the I<aio_sigevent> field (a "
1497 #| "I<struct sigevent>) that indicates the desired type of asynchronous "
1498 #| "notification at completion.  All other fields are ignored."
1499 msgid ""
1500 "Apart from I<aio_fildes>, the only field in the structure pointed to by "
1501 "I<aiocbp> that is used by this call is the I<aio_sigevent> field (a "
1502 "I<sigevent> structure, described in B<sigevent>(7)), which indicates the "
1503 "desired type of asynchronous notification at completion.  All other fields "
1504 "are ignored."
1505 msgstr ""
1506 "I<aiocbp> で指される構造体のフィールドのうち、この呼び出しで I<aio_fildes> 以"
1507 "外に使用されるのは I<aio_sigevent> フィールド (I<struct sigevent>) のみであ"
1508 "る。 このフィールドは、完了時の非同期通知に使用したいタイプを示す。 その他の"
1509 "フィールドは無視される。"
1510
1511 #. type: Plain text
1512 #: build/C/man3/aio_fsync.3:78
1513 msgid ""
1514 "On success (the sync request was successfully queued)  this function returns "
1515 "0.  On error -1 is returned, and I<errno> is set appropriately."
1516 msgstr ""
1517 "成功した場合 (同期リクエストをキューに入れるのに成功した場合)、 この関数は 0 "
1518 "を返す。 エラーの場合、-1 が返され、 I<errno> が適切に設定される。"
1519
1520 #. type: TP
1521 #: build/C/man3/aio_fsync.3:79 build/C/man3/aio_read.3:103
1522 #: build/C/man3/aio_suspend.3:88 build/C/man3/aio_write.3:110
1523 #: build/C/man2/io_cancel.2:57 build/C/man2/io_setup.2:55
1524 #: build/C/man2/io_submit.2:55 build/C/man3/lio_listio.3:149
1525 #: build/C/man3/lio_listio.3:152
1526 #, no-wrap
1527 msgid "B<EAGAIN>"
1528 msgstr "B<EAGAIN>"
1529
1530 #. type: Plain text
1531 #: build/C/man3/aio_fsync.3:82 build/C/man3/aio_read.3:106
1532 #: build/C/man3/aio_write.3:113 build/C/man3/lio_listio.3:152
1533 msgid "Out of resources."
1534 msgstr "リソースが足りない。"
1535
1536 #. type: Plain text
1537 #: build/C/man3/aio_fsync.3:86 build/C/man3/aio_write.3:117
1538 msgid "I<aio_fildes> is not a valid file descriptor open for writing."
1539 msgstr ""
1540 "I<aio_fildes> が書き込みのためにオープンされた有効なファイルディスクリプタで"
1541 "はない。"
1542
1543 #. type: Plain text
1544 #: build/C/man3/aio_fsync.3:94
1545 #, fuzzy
1546 #| msgid ""
1547 #| "No synchronized I/O for this file is supported, or I<op> is not B<O_SYNC> "
1548 #| "or B<O_DSYNC>."
1549 msgid ""
1550 "Synchronized I/O is not supported for this file, or I<op> is not B<O_SYNC> "
1551 "or B<O_DSYNC>."
1552 msgstr ""
1553 "このファイルに対する同期 I/O がサポートされていない。\n"
1554 "または I<op> が B<O_SYNC> でも B<O_DSYNC> でもない。"
1555
1556 #. type: Plain text
1557 #: build/C/man3/aio_fsync.3:98
1558 msgid "The B<aio_fsync>()  function is available since glibc 2.1."
1559 msgstr ""
1560
1561 #. type: Plain text
1562 #: build/C/man3/aio_fsync.3:110
1563 #, fuzzy
1564 #| msgid ""
1565 #| "B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_return>(3), "
1566 #| "B<aio_suspend>(3), B<aio_write>(3), B<aio>(7)"
1567 msgid ""
1568 "B<aio_cancel>(3), B<aio_error>(3), B<aio_read>(3), B<aio_return>(3), "
1569 "B<aio_suspend>(3), B<aio_write>(3), B<lio_listio>(3), B<aio>(7), B<sigevent>"
1570 "(7)"
1571 msgstr ""
1572 "B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_return>(3), "
1573 "B<aio_suspend>(3), B<aio_write>(3), B<aio>(7)"
1574
1575 #. type: TH
1576 #: build/C/man3/aio_init.3:24
1577 #, no-wrap
1578 msgid "AIO_INIT"
1579 msgstr "AIO_INIT"
1580
1581 #. type: TH
1582 #: build/C/man3/aio_init.3:24
1583 #, no-wrap
1584 msgid "2010-10-06"
1585 msgstr "2010-10-06"
1586
1587 #. type: Plain text
1588 #: build/C/man3/aio_init.3:27
1589 msgid "aio_init - POSIX asynchronous I/O initialization"
1590 msgstr ""
1591
1592 #. type: Plain text
1593 #: build/C/man3/aio_init.3:31
1594 #, no-wrap
1595 msgid ""
1596 "B<#define _GNU_SOURCE>         /* See feature_test_macros(7) */\n"
1597 "B<#include E<lt>aio.hE<gt>>\n"
1598 msgstr ""
1599 "B<#define _GNU_SOURCE>         /* See feature_test_macros(7) */\n"
1600 "B<#include E<lt>aio.hE<gt>>\n"
1601
1602 #. type: Plain text
1603 #: build/C/man3/aio_init.3:33
1604 #, no-wrap
1605 msgid "B<void aio_init(const struct aioinit *>I<init>B<);>\n"
1606 msgstr "B<void aio_init(const struct aioinit *>I<init>B<);>\n"
1607
1608 #. type: Plain text
1609 #: build/C/man3/aio_init.3:43
1610 msgid ""
1611 "The GNU-specific B<aio_init>()  function allows the caller to provide tuning "
1612 "hints to the glibc POSIX AIO implementation.  Use of this function is "
1613 "optional, but to be effective, it must be called before employing any other "
1614 "functions in the POSIX AIO API."
1615 msgstr ""
1616
1617 #. type: Plain text
1618 #: build/C/man3/aio_init.3:47
1619 msgid ""
1620 "The tuning information is provided in the buffer pointed to by the argument "
1621 "I<init>.  This buffer is a structure of the following form:"
1622 msgstr ""
1623
1624 #. type: Plain text
1625 #: build/C/man3/aio_init.3:62
1626 #, no-wrap
1627 msgid ""
1628 "struct aioinit {\n"
1629 "    int aio_threads;    /* Maximum number of threads */\n"
1630 "    int aio_num;        /* Number of expected simultaneous\n"
1631 "                           requests */\n"
1632 "    int aio_locks;      /* Not used */\n"
1633 "    int aio_usedba;     /* Not used */\n"
1634 "    int aio_debug;      /* Not used */\n"
1635 "    int aio_numusers;   /* Not used */\n"
1636 "    int aio_idle_time;  /* Number of seconds before idle thread\n"
1637 "                           terminates (since glibc 2.2) */\n"
1638 "    int aio_reserved;\n"
1639 "};\n"
1640 msgstr ""
1641 "struct aioinit {\n"
1642 "    int aio_threads;    /* Maximum number of threads */\n"
1643 "    int aio_num;        /* Number of expected simultaneous\n"
1644 "                           requests */\n"
1645 "    int aio_locks;      /* Not used */\n"
1646 "    int aio_usedba;     /* Not used */\n"
1647 "    int aio_debug;      /* Not used */\n"
1648 "    int aio_numusers;   /* Not used */\n"
1649 "    int aio_idle_time;  /* Number of seconds before idle thread\n"
1650 "                           terminates (since glibc 2.2) */\n"
1651 "    int aio_reserved;\n"
1652 "};\n"
1653
1654 #. type: Plain text
1655 #: build/C/man3/aio_init.3:68
1656 msgid "The following fields are used in the I<aioinit> structure:"
1657 msgstr ""
1658
1659 #. type: TP
1660 #: build/C/man3/aio_init.3:68
1661 #, no-wrap
1662 msgid "I<aio_threads>"
1663 msgstr "I<aio_threads>"
1664
1665 #. type: Plain text
1666 #: build/C/man3/aio_init.3:76
1667 msgid ""
1668 "This field specifies the maximum number of worker threads that may be used "
1669 "by the implementation.  If the number of outstanding I/O operations exceeds "
1670 "this limit, then excess operations will be queued until a worker thread "
1671 "becomes free.  If this field is specified with a value less than 1, the "
1672 "value 1 is used.  The default value is 20."
1673 msgstr ""
1674
1675 #. type: TP
1676 #: build/C/man3/aio_init.3:76
1677 #, no-wrap
1678 msgid "I<aio_num>"
1679 msgstr "I<aio_num>"
1680
1681 #.  FIXME But, if aio_num > 32, the behavior looks strange. See
1682 #.  http://sourceware.org/bugzilla/show_bug.cgi?id=12083
1683 #. type: Plain text
1684 #: build/C/man3/aio_init.3:85
1685 msgid ""
1686 "This field should specify the maximum number of simultaneous I/O requests "
1687 "that the caller expects to enqueue.  If a value less than 32 is specified "
1688 "for this field, it is rounded up to 32.  The default value is 64."
1689 msgstr ""
1690
1691 #. type: TP
1692 #: build/C/man3/aio_init.3:85
1693 #, no-wrap
1694 msgid "I<aio_idle_time>"
1695 msgstr "I<aio_idle_time>"
1696
1697 #. type: Plain text
1698 #: build/C/man3/aio_init.3:91
1699 msgid ""
1700 "This field specifies the amount of time in seconds that a worker thread "
1701 "should wait for further requests before terminating, after having completed "
1702 "a previous request.  The default value is 1."
1703 msgstr ""
1704
1705 #. type: Plain text
1706 #: build/C/man3/aio_init.3:95
1707 msgid "The B<aio_init>()  function is available since glibc 2.1."
1708 msgstr ""
1709
1710 #. type: Plain text
1711 #: build/C/man3/aio_init.3:97
1712 msgid "This function is a GNU extension."
1713 msgstr ""
1714
1715 #. type: Plain text
1716 #: build/C/man3/aio_init.3:99
1717 msgid "B<aio>(7)"
1718 msgstr "B<aio>(7)"
1719
1720 #. type: TH
1721 #: build/C/man3/aio_read.3:23
1722 #, no-wrap
1723 msgid "AIO_READ"
1724 msgstr "AIO_READ"
1725
1726 #. type: Plain text
1727 #: build/C/man3/aio_read.3:26
1728 msgid "aio_read - asynchronous read"
1729 msgstr "aio_read - 非同期で読み込む"
1730
1731 #. type: Plain text
1732 #: build/C/man3/aio_read.3:30
1733 msgid "B<int aio_read(struct aiocb *>I<aiocbp>B<);>"
1734 msgstr "B<int aio_read(struct aiocb *>I<aiocbp>B<);>"
1735
1736 #. type: Plain text
1737 #: build/C/man3/aio_read.3:40
1738 msgid ""
1739 "The B<aio_read>()  function queues the I/O request described by the buffer "
1740 "pointed to by I<aiocbp>.  This function is the asynchronous analog of B<read>"
1741 "(2).  The arguments of the call"
1742 msgstr ""
1743
1744 #. type: Plain text
1745 #: build/C/man3/aio_read.3:42
1746 #, no-wrap
1747 msgid "    read(fd, buf, count)\n"
1748 msgstr ""
1749
1750 #. type: Plain text
1751 #: build/C/man3/aio_read.3:55 build/C/man3/aio_write.3:55
1752 msgid ""
1753 "correspond (in order) to the fields I<aio_fildes>, I<aio_buf>, and "
1754 "I<aio_nbytes> of the structure pointed to by I<aiocbp>.  (See B<aio>(7)  for "
1755 "a description of the I<aiocb> structure.)"
1756 msgstr ""
1757
1758 #. type: Plain text
1759 #: build/C/man3/aio_read.3:61
1760 #, fuzzy
1761 #| msgid ""
1762 #| "The data is read starting at the absolute file offset I<aiocbp-"
1763 #| "E<gt>aio_offset>, regardless of the current file position.  After this "
1764 #| "request, the value of the current file position is unspecified."
1765 msgid ""
1766 "The data is read starting at the absolute file offset I<aiocbp-"
1767 "E<gt>aio_offset>, regardless of the current file offset.  After the call, "
1768 "the value of the current file offset is unspecified."
1769 msgstr ""
1770 "データは、カレントのファイル位置に関係なく、絶対ファイルオフセット I<aiocbp-"
1771 "E<gt>aio_offset> を開始点として読み込まれる。 このリクエスト後の、カレントの"
1772 "ファイル位置は規定されていない。"
1773
1774 #. type: Plain text
1775 #: build/C/man3/aio_read.3:74
1776 #, fuzzy
1777 #| msgid ""
1778 #| "The \"asynchronous\" means that this call returns as soon as the request "
1779 #| "has been enqueued; the read may or may not have completed when the call "
1780 #| "returns.  One tests for completion using B<aio_error>(3)."
1781 msgid ""
1782 "The \"asynchronous\" means that this call returns as soon as the request has "
1783 "been enqueued; the read may or may not have completed when the call "
1784 "returns.  One tests for completion using B<aio_error>(3).  The return status "
1785 "of a completed I/O operation can be obtained B<aio_return>(3).  Asynchronous "
1786 "notification of I/O completion can be obtained by setting I<aiocbp-"
1787 "E<gt>aio_sigevent> appropriately; see B<sigevent>(7)  for details."
1788 msgstr ""
1789 "「非同期」とは「リクエストがキューに入れられたら、この呼び出しはすぐに返る」 "
1790 "ということである。 呼び出しから戻った時に、読み込みは完了しているかも知れない"
1791 "し、 完了していないかも知れない。 B<aio_error>(3)  を使うことで完了したかをテ"
1792 "ストできる。"
1793
1794 #. type: Plain text
1795 #: build/C/man3/aio_read.3:81 build/C/man3/aio_write.3:88
1796 msgid ""
1797 "If B<_POSIX_PRIORITIZED_IO> is defined, and this file supports it, then the "
1798 "asynchronous operation is submitted at a priority equal to that of the "
1799 "calling process minus I<aiocbp-E<gt>aio_reqprio>."
1800 msgstr ""
1801 "B<_POSIX_PRIORITIZED_IO> が定義されていて、 かつファイルがこれをサポートして"
1802 "いる場合、 非同期操作は呼び出したプロセスの優先度から I<aiocbp-"
1803 "E<gt>aio_reqprio> を引いた優先度で登録 (submit) される。"
1804
1805 #. type: Plain text
1806 #: build/C/man3/aio_read.3:85 build/C/man3/aio_write.3:92
1807 msgid "The field I<aiocbp-E<gt>aio_lio_opcode> is ignored."
1808 msgstr "フィールド I<aiocbp-E<gt>aio_lio_opcode> は無視される。"
1809
1810 #. type: Plain text
1811 #: build/C/man3/aio_read.3:87
1812 msgid "No data is read from a regular file beyond its maximum offset."
1813 msgstr ""
1814 "最大オフセットを超えた通常のファイルからは、何もデータが読み込まれない。"
1815
1816 #. type: Plain text
1817 #: build/C/man3/aio_read.3:102 build/C/man3/aio_write.3:109
1818 #, fuzzy
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 first "
1822 #| "detected later, it will be reported via B<aio_return>(3)  (returns status "
1823 #| "-1) and B<aio_error>(3)  (error status whatever one would have gotten in "
1824 #| "I<errno>, such as B<EBADF>)."
1825 msgid ""
1826 "On success, 0 is returned.  On error the request is not enqueued, -1 is "
1827 "returned, and I<errno> is set appropriately.  If an error is only detected "
1828 "later, it will be reported via B<aio_return>(3)  (returns status -1) and "
1829 "B<aio_error>(3)  (error status\\(emwhatever one would have gotten in "
1830 "I<errno>, such as B<EBADF>)."
1831 msgstr ""
1832 "成功した場合、0 が返される。 エラーの場合、リクエストはキューに入れられず、 "
1833 "-1 が返されて、 I<errno> が適切に設定される。 エラーは最初に検知された後で、 "
1834 "(状態 -1 を返す)  B<aio_return>(3)  と (I<errno> で取得できる B<EBADF> のよう"
1835 "なエラー状態を返す)  B<aio_error>(3)  で報告されるだろう。"
1836
1837 #. type: Plain text
1838 #: build/C/man3/aio_read.3:110
1839 msgid "I<aio_fildes> is not a valid file descriptor open for reading."
1840 msgstr ""
1841 "I<aio_fildes> は読み込みのためにオープンされた有効なファイルディスクリプタで"
1842 "ない。"
1843
1844 #. type: Plain text
1845 #: build/C/man3/aio_read.3:118
1846 #, fuzzy
1847 #| msgid ""
1848 #| "One or more of I<aio_offset>, I<aio_reqprio>, I<aio_nbytes> are invalid."
1849 msgid ""
1850 "One or more of I<aio_offset>, I<aio_reqprio>, or I<aio_nbytes> are invalid."
1851 msgstr ""
1852 "I<aio_offset>, I<aio_reqprio>, I<aio_nbytes> のうち 1 つ以上が無効である。"
1853
1854 #. type: TP
1855 #: build/C/man3/aio_read.3:118 build/C/man3/aio_write.3:128
1856 #: build/C/man2/io_cancel.2:66 build/C/man2/io_destroy.2:60
1857 #: build/C/man2/io_getevents.2:73 build/C/man2/io_setup.2:69
1858 #: build/C/man2/io_submit.2:71
1859 #, no-wrap
1860 msgid "B<ENOSYS>"
1861 msgstr "B<ENOSYS>"
1862
1863 #. type: Plain text
1864 #: build/C/man3/aio_read.3:121 build/C/man3/aio_write.3:131
1865 msgid "This function is not supported."
1866 msgstr "この関数がサポートされていない。"
1867
1868 #. type: TP
1869 #: build/C/man3/aio_read.3:121
1870 #, no-wrap
1871 msgid "B<EOVERFLOW>"
1872 msgstr "B<EOVERFLOW>"
1873
1874 #. type: Plain text
1875 #: build/C/man3/aio_read.3:126
1876 msgid ""
1877 "The file is a regular file, we start reading before end-of-file and want at "
1878 "least one byte, but the starting position is past the maximum offset for "
1879 "this file."
1880 msgstr ""
1881 "ファイルが通常のファイルであり、 ファイルの終端の前から読み込みを開始して、 "
1882 "少なくとも 1 バイトを読み込もうとした。 しかし開始位置がこのファイルの最大オ"
1883 "フセットを超えていた。"
1884
1885 #. type: Plain text
1886 #: build/C/man3/aio_read.3:130
1887 msgid "The B<aio_read>()  function is available since glibc 2.1."
1888 msgstr ""
1889
1890 #.  or the control block of the operation
1891 #. type: Plain text
1892 #: build/C/man3/aio_read.3:140
1893 #, fuzzy
1894 #| msgid ""
1895 #| "It is a good idea to zero out the control block before use.  This control "
1896 #| "block must not be changed while the read operation is in progress.  The "
1897 #| "buffer area being read into must not be accessed during the operation or "
1898 #| "undefined results may occur.  The memory areas involved must remain valid."
1899 msgid ""
1900 "It is a good idea to zero out the control block before use.  The control "
1901 "block must not be changed while the read operation is in progress.  The "
1902 "buffer area being read into must not be accessed during the operation or "
1903 "undefined results may occur.  The memory areas involved must remain valid."
1904 msgstr ""
1905 "使用する前に制御ブロックを 0 にしておくのは、よい考えである。 この制御ブロッ"
1906 "クは、読み込み操作が進行している間は変更すべきでない。 読み込まれるバッファ領"
1907 "域は 操作の最中にアクセスすべきではない。 さもないと起こる結果が不定になる。 "
1908 "これに含まれるメモリ領域は、有効なままにしなければならない。"
1909
1910 #. type: Plain text
1911 #: build/C/man3/aio_read.3:144 build/C/man3/aio_write.3:149
1912 #: build/C/man3/lio_listio.3:218
1913 msgid ""
1914 "Simultaneous I/O operations specifying the same I<aiocb> structure produce "
1915 "undefined results."
1916 msgstr ""
1917
1918 #. type: Plain text
1919 #: build/C/man3/aio_read.3:156
1920 #, fuzzy
1921 #| msgid ""
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 msgid ""
1925 "B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_return>(3), "
1926 "B<aio_suspend>(3), B<aio_write>(3), B<lio_listio>(3), B<aio>(7)"
1927 msgstr ""
1928 "B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_return>(3), "
1929 "B<aio_suspend>(3), B<aio_write>(3), B<aio>(7)"
1930
1931 #. type: TH
1932 #: build/C/man3/aio_return.3:23
1933 #, no-wrap
1934 msgid "AIO_RETURN"
1935 msgstr "AIO_RETURN"
1936
1937 #. type: Plain text
1938 #: build/C/man3/aio_return.3:26
1939 msgid "aio_return - get return status of asynchronous I/O operation"
1940 msgstr "aio_return - 非同期 I/O 操作の返り値 (return status) を取得する"
1941
1942 #. type: Plain text
1943 #: build/C/man3/aio_return.3:30
1944 msgid "B<ssize_t aio_return(struct aiocb *>I<aiocbp>B<);>"
1945 msgstr "B<ssize_t aio_return(struct aiocb *>I<aiocbp>B<);>"
1946
1947 #. type: Plain text
1948 #: build/C/man3/aio_return.3:43
1949 #, fuzzy
1950 #| msgid ""
1951 #| "The B<aio_return>()  function returns the final return status for the "
1952 #| "asynchronous I/O request with control block pointed to by I<aiocbp>."
1953 msgid ""
1954 "The B<aio_return>()  function returns the final return status for the "
1955 "asynchronous I/O request with control block pointed to by I<aiocbp>.  (See "
1956 "B<aio>(7)  for a description of the I<aiocb> structure.)"
1957 msgstr ""
1958 "B<aio_return>()  関数は I<aiocbp> で指された制御ブロックにおける非同期 I/O リ"
1959 "クエストの最終的な返り値を返す。"
1960
1961 #. type: Plain text
1962 #: build/C/man3/aio_return.3:48
1963 msgid ""
1964 "This function should be called only once for any given request, after "
1965 "B<aio_error>(3)  returns something other than B<EINPROGRESS>."
1966 msgstr ""
1967 "この関数は、 B<aio_error>(3)  が B<EINPROGRESS> 以外を返した後で、 与えられた"
1968 "リクエストに対して 1 回だけ呼ばれるべきである。"
1969
1970 #. type: Plain text
1971 #: build/C/man3/aio_return.3:57
1972 #, fuzzy
1973 #| msgid ""
1974 #| "If the asynchronous I/O operation has completed, this function returns "
1975 #| "the value that would have been returned in case of a synchronous I<read>, "
1976 #| "I<write>, or I<fsync> request.  Otherwise the return value is undefined.  "
1977 #| "On error, the error value is returned."
1978 msgid ""
1979 "If the asynchronous I/O operation has completed, this function returns the "
1980 "value that would have been returned in case of a synchronous B<read>(2), "
1981 "B<write>(2), B<fsync>(2)  or B<fdatasync>(2), call."
1982 msgstr ""
1983 "非同期 I/O 操作が完了した場合、この関数は同期 I<read>, I<write>, I<fsync> リ"
1984 "クエストのときに返されるのと同じ値を返す。 それ以外の場合、返り値は未定義であ"
1985 "る。 エラーの場合、エラー値が返される。"
1986
1987 #. type: Plain text
1988 #: build/C/man3/aio_return.3:62
1989 msgid ""
1990 "If the asynchronous I/O operation has not yet completed, the return value "
1991 "and effect of B<aio_return>()  are undefined."
1992 msgstr ""
1993
1994 #. type: Plain text
1995 #: build/C/man3/aio_return.3:68
1996 msgid ""
1997 "I<aiocbp> does not point at a control block for an asynchronous I/O request "
1998 "of which the return status has not been retrieved yet."
1999 msgstr ""
2000 "I<aiocbp> が、返り値がまだ取得されていない非同期 I/O リクエストの 制御ブロッ"
2001 "クを指していない。"
2002
2003 #. type: Plain text
2004 #: build/C/man3/aio_return.3:72
2005 msgid "The B<aio_return>()  function is available since glibc 2.1."
2006 msgstr ""
2007
2008 #. type: Plain text
2009 #: build/C/man3/aio_return.3:86
2010 #, fuzzy
2011 #| msgid ""
2012 #| "B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_return>(3), "
2013 #| "B<aio_suspend>(3), B<aio_write>(3), B<aio>(7)"
2014 msgid ""
2015 "B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_read>(3), "
2016 "B<aio_suspend>(3), B<aio_write>(3), B<lio_listio>(3), B<aio>(7)"
2017 msgstr ""
2018 "B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_return>(3), "
2019 "B<aio_suspend>(3), B<aio_write>(3), B<aio>(7)"
2020
2021 #. type: TH
2022 #: build/C/man3/aio_suspend.3:24
2023 #, no-wrap
2024 msgid "AIO_SUSPEND"
2025 msgstr "AIO_SUSPEND"
2026
2027 #. type: Plain text
2028 #: build/C/man3/aio_suspend.3:27
2029 msgid "aio_suspend - wait for asynchronous I/O operation or timeout"
2030 msgstr "aio_suspend - 非同期 I/O 操作またはタイムアウトを待つ"
2031
2032 #. type: Plain text
2033 #: build/C/man3/aio_suspend.3:31 build/C/man3/lio_listio.3:29
2034 #, no-wrap
2035 msgid "B<#include E<lt>aio.hE<gt>>\n"
2036 msgstr "B<#include E<lt>aio.hE<gt>>\n"
2037
2038 #. type: Plain text
2039 #: build/C/man3/aio_suspend.3:33
2040 #, fuzzy, no-wrap
2041 #| msgid "B<int aio_suspend(const struct aiocb * const >I<cblist>B<[],>\n"
2042 msgid "B<int aio_suspend(const struct aiocb * const >I<aiocb_list>B<[],>\n"
2043 msgstr "B<int aio_suspend(const struct aiocb * const >I<cblist>B<[],>\n"
2044
2045 #. type: Plain text
2046 #: build/C/man3/aio_suspend.3:35
2047 #, fuzzy, no-wrap
2048 #| msgid "B<                int >I<n>B<, const struct timespec *>I<timeout>B<);>\n"
2049 msgid "B<                int >I<nitems>B<, const struct timespec *>I<timeout>B<);>\n"
2050 msgstr "B<                int >I<n>B<, const struct timespec *>I<timeout>B<);>\n"
2051
2052 #. type: Plain text
2053 #: build/C/man3/aio_suspend.3:37 build/C/man3/lio_listio.3:34
2054 #, no-wrap
2055 msgid "Link with I<-lrt>.\n"
2056 msgstr "I<-lrt> でリンクする。\n"
2057
2058 #. type: Plain text
2059 #: build/C/man3/aio_suspend.3:42
2060 msgid ""
2061 "The B<aio_suspend>()  function suspends the calling thread until one of the "
2062 "following occurs:"
2063 msgstr ""
2064
2065 #. type: Plain text
2066 #: build/C/man3/aio_suspend.3:46
2067 msgid ""
2068 "One or more of the asynchronous I/O requests in the list I<aiocb_list> has "
2069 "completed."
2070 msgstr ""
2071
2072 #. type: Plain text
2073 #: build/C/man3/aio_suspend.3:48
2074 msgid "A signal is delivered."
2075 msgstr ""
2076
2077 #. type: Plain text
2078 #: build/C/man3/aio_suspend.3:55
2079 msgid ""
2080 "I<timeout> is not NULL and the specified time interval has passed.  (For "
2081 "details of the I<timespec> structure, see B<nanosleep>(2).)"
2082 msgstr ""
2083
2084 #. type: Plain text
2085 #: build/C/man3/aio_suspend.3:73
2086 #, fuzzy
2087 #| msgid ""
2088 #| "Each item in the list must either be NULL (and then is ignored), or a "
2089 #| "pointer to a control block on which I/O was initiated using B<aio_read>"
2090 #| "(3), B<aio_write>(3), or B<lio_listio>(3)."
2091 msgid ""
2092 "The I<nitems> argument specifies the number of items in I<aiocb_list>.  Each "
2093 "item in the list pointed to by I<aiocb_list> must be either NULL (and then "
2094 "is ignored), or a pointer to a control block on which I/O was initiated "
2095 "using B<aio_read>(3), B<aio_write>(3), or B<lio_listio>(3).  (See B<aio>(7)  "
2096 "for a description of the I<aiocb> structure.)"
2097 msgstr ""
2098 "リストの各アイテムは、NULL (これは無視される) か、 B<aio_read>(3), "
2099 "B<aio_write>(3), B<lio_listio>(3)  を使って I/O が開始された制御ブロックへの"
2100 "ポインタでなければならない。"
2101
2102 #. type: Plain text
2103 #: build/C/man3/aio_suspend.3:79
2104 #, fuzzy
2105 #| msgid ""
2106 #| "If B<CLOCK_MONOTONIC> is supported, this clock is used to measure the "
2107 #| "timeout interval."
2108 msgid ""
2109 "If B<CLOCK_MONOTONIC> is supported, this clock is used to measure the "
2110 "timeout interval (see B<clock_gettime>(3))."
2111 msgstr ""
2112 "B<CLOCK_MONOTONIC> がサポートされる場合、 このクロックを使ってタイムアウトの"
2113 "間隔が計測される。"
2114
2115 #. type: Plain text
2116 #: build/C/man3/aio_suspend.3:87
2117 #, fuzzy
2118 #| msgid ""
2119 #| "If this function returns after completion of one of the indicated "
2120 #| "requests, it returns 0.  Otherwise it returns -1 and sets I<errno> "
2121 #| "appropriately."
2122 msgid ""
2123 "If this function returns after completion of one of the I/O requests "
2124 "specified in I<aiocb_list>, 0 is returned.  Otherwise, -1 is returned, and "
2125 "I<errno> is set to indicate the error."
2126 msgstr ""
2127 "指示されたリクエストの 1 つが完了した後にこの関数が返る場合は、0 を返す。 そ"
2128 "れ以外の場合は -1 を返して、 I<errno> を適切に設定する。"
2129
2130 #. type: Plain text
2131 #: build/C/man3/aio_suspend.3:92
2132 #, fuzzy
2133 #| msgid ""
2134 #| "The call was ended by timeout, before any of the indicated operations had "
2135 #| "completed."
2136 msgid ""
2137 "The call timed out before any of the indicated operations had completed."
2138 msgstr ""
2139 "指示された操作のどれも完了しないうちに、 この呼び出しがタイムアウトによって終"
2140 "了させられた。"
2141
2142 #. type: TP
2143 #: build/C/man3/aio_suspend.3:92 build/C/man2/io_getevents.2:69
2144 #: build/C/man3/lio_listio.3:168
2145 #, no-wrap
2146 msgid "B<EINTR>"
2147 msgstr "B<EINTR>"
2148
2149 #. type: Plain text
2150 #: build/C/man3/aio_suspend.3:98
2151 #, fuzzy
2152 #| msgid ""
2153 #| "The call was ended by signal; see B<signal>(7).  (Possibly the completion "
2154 #| "signal of one of the operations we were waiting for.)"
2155 msgid ""
2156 "The call was ended by signal (possibly the completion signal of one of the "
2157 "operations we were waiting for); see B<signal>(7)."
2158 msgstr ""
2159 "この呼び出しがシグナルによって終了させられた。 B<signal>(7)  参照。 (このシグ"
2160 "ナルは、完了を待っていた操作のいずれかの完了シグナルの可能性もある。)"
2161
2162 #. type: Plain text
2163 #: build/C/man3/aio_suspend.3:102
2164 msgid "The B<aio_suspend>()  function is available since glibc 2.1."
2165 msgstr ""
2166
2167 #. type: Plain text
2168 #: build/C/man3/aio_suspend.3:108
2169 msgid ""
2170 "One can achieve polling by using a non-NULL I<timeout> that specifies a zero "
2171 "time interval."
2172 msgstr ""
2173 "時間間隔が 0 であることを指定する NULL ではない I<timeout> を使って、ポーリン"
2174 "グを行うこともできる。"
2175
2176 #. type: Plain text
2177 #: build/C/man3/aio_suspend.3:114
2178 msgid ""
2179 "If one or more of the asynchronous I/O operations specified in I<aiocb_list> "
2180 "has already completed at the time of the call to B<aio_suspend>(), then the "
2181 "call returns immediately."
2182 msgstr ""
2183
2184 #. type: Plain text
2185 #: build/C/man3/aio_suspend.3:124
2186 msgid ""
2187 "To determine which I/O operations have completed after a successful return "
2188 "from B<aio_suspend>(), use B<aio_error>(3)  to scan the list of I<aiocb> "
2189 "structures pointed to by I<aiocb_list>."
2190 msgstr ""
2191
2192 #. type: Plain text
2193 #: build/C/man3/aio_suspend.3:134
2194 #, fuzzy
2195 #| msgid ""
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 msgid ""
2199 "B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_read>(3), "
2200 "B<aio_return>(3), B<aio_write>(3), B<lio_listio>(3), B<aio>(7), B<time>(7)"
2201 msgstr ""
2202 "B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_read>(3), "
2203 "B<aio_return>(3), B<aio_write>(3), B<time>(7)"
2204
2205 #. type: TH
2206 #: build/C/man3/aio_write.3:23
2207 #, no-wrap
2208 msgid "AIO_WRITE"
2209 msgstr "AIO_WRITE"
2210
2211 #. type: Plain text
2212 #: build/C/man3/aio_write.3:26
2213 msgid "aio_write - asynchronous write"
2214 msgstr "aio_write - 非同期で書き込む"
2215
2216 #. type: Plain text
2217 #: build/C/man3/aio_write.3:30
2218 msgid "B<int aio_write(struct aiocb *>I<aiocbp>B<);>"
2219 msgstr "B<int aio_write(struct aiocb *>I<aiocbp>B<);>"
2220
2221 #. type: Plain text
2222 #: build/C/man3/aio_write.3:40
2223 msgid ""
2224 "The B<aio_write>()  function queues the I/O request described by the buffer "
2225 "pointed to by I<aiocb>.  This function is the asynchronous analog of B<write>"
2226 "(2).  The arguments of the call"
2227 msgstr ""
2228
2229 #. type: Plain text
2230 #: build/C/man3/aio_write.3:42
2231 #, no-wrap
2232 msgid "    write(fd, buf, count)\n"
2233 msgstr ""
2234
2235 #. type: Plain text
2236 #: build/C/man3/aio_write.3:68
2237 #, fuzzy
2238 #| msgid ""
2239 #| "If B<O_APPEND> is not set, the data is written starting at the absolute "
2240 #| "file offset I<aiocbp-E<gt>aio_offset>, regardless of the current file "
2241 #| "position.  If B<O_APPEND> is set, the data is written at the end of the "
2242 #| "file.  After this request, the value of the current file position is "
2243 #| "unspecified."
2244 msgid ""
2245 "If B<O_APPEND> is not set, the data is written starting at the absolute file "
2246 "offset I<aiocbp-E<gt>aio_offset>, regardless of the current file offset.  If "
2247 "B<O_APPEND> is set, data is written at the end of the file in the same order "
2248 "as B<aio_write>()  calls are made.  After the call, the value of the current "
2249 "file offset is unspecified."
2250 msgstr ""
2251 "B<O_APPEND> が設定されない場合、カレントのファイル位置に関係なく、 データは絶"
2252 "対ファイルオフセット I<aiocbp-E<gt>aio_offset> を開始点として書き込まれる。 "
2253 "B<O_APPEND> が設定されている場合、データはファイルの終端に書き込まれる。 この"
2254 "リクエストの後の、カレントのファイル位置は規定されていない。"
2255
2256 #. type: Plain text
2257 #: build/C/man3/aio_write.3:81
2258 #, fuzzy
2259 #| msgid ""
2260 #| "The \"asynchronous\" means that this call returns as soon as the request "
2261 #| "has been enqueued; the write may or may not have completed when the call "
2262 #| "returns.  One tests for completion using B<aio_error>(3)."
2263 msgid ""
2264 "The \"asynchronous\" means that this call returns as soon as the request has "
2265 "been enqueued; the write may or may not have completed when the call "
2266 "returns.  One tests for completion using B<aio_error>(3).  The return status "
2267 "of a completed I/O operation can be obtained B<aio_return>(3).  Asynchronous "
2268 "notification of I/O completion can be obtained by setting I<aiocbp-"
2269 "E<gt>aio_sigevent> appropriately; see B<sigevent>(7)  for details."
2270 msgstr ""
2271 "「非同期」とは「リクエストがキューに入れられたら、この呼び出しはすぐに返る」 "
2272 "ということである。 呼び出しから戻った時に、書き込みは完了しているかも知れない"
2273 "し、 完了していないかも知れない。 B<aio_error>(3)  を使うことで完了したかをテ"
2274 "ストできる。"
2275
2276 #. type: Plain text
2277 #: build/C/man3/aio_write.3:94
2278 msgid "No data is written to a regular file beyond its maximum offset."
2279 msgstr "最大オフセットを超えた通常のファイルには、何もデータが書き込まれない。"
2280
2281 #. type: TP
2282 #: build/C/man3/aio_write.3:117
2283 #, no-wrap
2284 msgid "B<EFBIG>"
2285 msgstr "B<EFBIG>"
2286
2287 #. type: Plain text
2288 #: build/C/man3/aio_write.3:121
2289 msgid ""
2290 "The file is a regular file, we want to write at least one byte, but the "
2291 "starting position is at or beyond the maximum offset for this file."
2292 msgstr ""
2293 "ファイルは通常のファイルであり、少なくとも 1 バイトを書き込もうとしている。 "
2294 "しかし開始位置が、このファイルの最大オフセットと同じかそれを超えている。"
2295
2296 #. type: Plain text
2297 #: build/C/man3/aio_write.3:128
2298 msgid ""
2299 "One or more of I<aio_offset>, I<aio_reqprio>, I<aio_nbytes> are invalid."
2300 msgstr ""
2301 "I<aio_offset>, I<aio_reqprio>, I<aio_nbytes> のうち 1 つ以上が無効である。"
2302
2303 #. type: Plain text
2304 #: build/C/man3/aio_write.3:135
2305 msgid "The B<aio_write>()  function is available since glibc 2.1."
2306 msgstr ""
2307
2308 #.  or the control block of the operation
2309 #. type: Plain text
2310 #: build/C/man3/aio_write.3:145
2311 #, fuzzy
2312 #| msgid ""
2313 #| "It is a good idea to zero out the control block before use.  This 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 "
2316 #| "or undefined results may occur.  The memory areas involved must remain "
2317 #| "valid."
2318 msgid ""
2319 "It is a good idea to zero out the control block before use.  The control "
2320 "block must not be changed while the write operation is in progress.  The "
2321 "buffer area being written out must not be accessed during the operation or "
2322 "undefined results may occur.  The memory areas involved must remain valid."
2323 msgstr ""
2324 "使用する前に制御ブロックを 0 にしておくのは、よい考えである。 この制御ブロッ"
2325 "クは、読み込み操作が進行している間は変更すべきでない。 読み込まれるバッファ領"
2326 "域は 操作の最中にアクセスすべきではない。 さもないと起こる結果が不定になる。 "
2327 "これに含まれるメモリ領域は、有効なままにしなければならない。"
2328
2329 #. type: Plain text
2330 #: build/C/man3/aio_write.3:158
2331 #, fuzzy
2332 #| msgid ""
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 msgid ""
2336 "B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_read>(3), "
2337 "B<aio_return>(3), B<aio_suspend>(3), B<lio_listio>(3), B<aio>(7)"
2338 msgstr ""
2339 "B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_return>(3), "
2340 "B<aio_suspend>(3), B<aio_write>(3), B<aio>(7)"
2341
2342 #. type: TH
2343 #: build/C/man2/io_cancel.2:23
2344 #, no-wrap
2345 msgid "IO_CANCEL"
2346 msgstr "IO_CANCEL"
2347
2348 #. type: TH
2349 #: build/C/man2/io_cancel.2:23 build/C/man2/io_destroy.2:23
2350 #: build/C/man2/io_setup.2:23 build/C/man2/io_submit.2:23
2351 #, no-wrap
2352 msgid "2008-06-18"
2353 msgstr "2008-06-18"
2354
2355 #. type: Plain text
2356 #: build/C/man2/io_cancel.2:26
2357 msgid "io_cancel - cancel an outstanding asynchronous I/O operation"
2358 msgstr "io_cancel - 未処理の非同期 I/O 操作の取り消し"
2359
2360 #.  .ad l
2361 #.  .hy 0
2362 #.  #include <linux/aio.h>
2363 #. type: Plain text
2364 #: build/C/man2/io_cancel.2:33 build/C/man2/io_destroy.2:32
2365 #: build/C/man2/io_setup.2:32 build/C/man2/io_submit.2:32
2366 #, no-wrap
2367 msgid "B<#include E<lt>libaio.hE<gt>>\n"
2368 msgstr "B<#include E<lt>libaio.hE<gt>>\n"
2369
2370 #.  .HP 16
2371 #.  .ad
2372 #.  .hy
2373 #. type: Plain text
2374 #: build/C/man2/io_cancel.2:39
2375 #, no-wrap
2376 msgid ""
2377 "B<int io_cancel(aio_context_t >I<ctx_id>B<, struct iocb *>I<iocb>B<,>\n"
2378 "B<              struct io_event *>I<result>B<);>\n"
2379 msgstr ""
2380 "B<int io_cancel(aio_context_t >I<ctx_id>B<, struct iocb *>I<iocb>B<,>\n"
2381 "B<              struct io_event *>I<result>B<);>\n"
2382
2383 #. type: Plain text
2384 #: build/C/man2/io_cancel.2:41 build/C/man2/io_destroy.2:39
2385 #: build/C/man2/io_getevents.2:42 build/C/man2/io_setup.2:39
2386 #: build/C/man2/io_submit.2:40
2387 #, no-wrap
2388 msgid "Link with I<-laio>.\n"
2389 msgstr "I<-laio> とリンクする。\n"
2390
2391 #. type: Plain text
2392 #: build/C/man2/io_cancel.2:51
2393 msgid ""
2394 "B<io_cancel>()  attempts to cancel an asynchronous I/O operation previously "
2395 "submitted with B<io_submit>(2).  I<ctx_id> is the AIO context ID of the "
2396 "operation to be canceled.  If the AIO context is found, the event will be "
2397 "canceled and then copied into the memory pointed to by I<result> without "
2398 "being placed into the completion queue."
2399 msgstr ""
2400 "B<io_cancel>()  は、過去に B<io_submit>(2)  を使って登録された非同期 I/O "
2401 "(AIO) 操作の取り消しを行おうとする。 I<ctx_id> は、取り消しを行う操作の AIO "
2402 "コンテキストの ID である。 指定した AIO コンテキストが見つかると、 対象のイベ"
2403 "ントの取り消しが行われ、その後 I<result> で指されたメモリに コピーされる (こ"
2404 "のとき、完了キューへの移動は行われない)。"
2405
2406 #. type: Plain text
2407 #: build/C/man2/io_cancel.2:56
2408 msgid ""
2409 "On success, B<io_cancel>()  returns 0.  For the failure return, see NOTES."
2410 msgstr ""
2411 "成功した場合、 B<io_cancel>()  は 0 を返す。 失敗時の返り値については、「注"
2412 "意」の節を参照すること。"
2413
2414 #. type: Plain text
2415 #: build/C/man2/io_cancel.2:60
2416 msgid "The I<iocb> specified was not canceled."
2417 msgstr "指定された I<iocb> の取り消しが行われなかった。"
2418
2419 #. type: TP
2420 #: build/C/man2/io_cancel.2:60 build/C/man2/io_destroy.2:54
2421 #: build/C/man2/io_getevents.2:61 build/C/man2/io_setup.2:58
2422 #: build/C/man2/io_submit.2:61
2423 #, no-wrap
2424 msgid "B<EFAULT>"
2425 msgstr "B<EFAULT>"
2426
2427 #. type: Plain text
2428 #: build/C/man2/io_cancel.2:63 build/C/man2/io_submit.2:64
2429 msgid "One of the data structures points to invalid data."
2430 msgstr "データ構造の中に無効なデータを指しているものがある。"
2431
2432 #. type: Plain text
2433 #: build/C/man2/io_cancel.2:66
2434 msgid "The AIO context specified by I<ctx_id> is invalid."
2435 msgstr "I<ctx_id> で指定された AIO コンテキストが無効である。"
2436
2437 #. type: Plain text
2438 #: build/C/man2/io_cancel.2:70
2439 msgid "B<io_cancel>()  is not implemented on this architecture."
2440 msgstr "B<io_cancel>()  はこのアーキテクチャでは実装されていない。"
2441
2442 #. type: Plain text
2443 #: build/C/man2/io_cancel.2:73 build/C/man2/io_destroy.2:67
2444 #: build/C/man2/io_getevents.2:80 build/C/man2/io_setup.2:76
2445 #: build/C/man2/io_submit.2:78
2446 msgid ""
2447 "The asynchronous I/O system calls first appeared in Linux 2.5, August 2002."
2448 msgstr "非同期 I/O システム・コールは 2002年8月に Linux 2.5 で初めて登場した。"
2449
2450 #. type: Plain text
2451 #: build/C/man2/io_cancel.2:78
2452 msgid ""
2453 "B<io_cancel>()  is Linux-specific and should not be used in programs that "
2454 "are intended to be portable."
2455 msgstr ""
2456 "B<io_cancel>()  は Linux 固有であり、移植を想定したプログラムで使用すべきでは"
2457 "ない。"
2458
2459 #. type: Plain text
2460 #: build/C/man2/io_cancel.2:80 build/C/man2/io_destroy.2:74
2461 #: build/C/man2/io_getevents.2:87 build/C/man2/io_setup.2:83
2462 #: build/C/man2/io_submit.2:85
2463 msgid "Glibc does not provide a wrapper function for this system call."
2464 msgstr "glibc はこのシステムコール用のラッパー関数を提供していない。"
2465
2466 #. type: Plain text
2467 #: build/C/man2/io_cancel.2:94
2468 msgid ""
2469 "The wrapper provided in I<libaio> for B<io_cancel>()  does not follow the "
2470 "usual C library conventions for indicating error: on error it returns a "
2471 "negated error number (the negative of one of the values listed in ERRORS).  "
2472 "If the system call is invoked via B<syscall>(2), then the return value "
2473 "follows the usual conventions for indicating an error: -1, with I<errno> set "
2474 "to a (positive) value that indicates the error."
2475 msgstr ""
2476 "I<libaio> で B<io_cancel>()  用に提供されているラッパー関数は、エラーの通知が"
2477 "通常の C ライブラリの 慣習にしたがっておらず、エラーの場合には負のエラー番号 "
2478 "(エラーの節に列挙されている値の一つを負にしたもの) が返り値となる。 "
2479 "B<syscall>(2)  経由でシステムコールを起動すると、返り値は通常のエラー通知の慣"
2480 "習に したがってものとなり、エラーの場合には -1 が返り、 I<errno> にエラーを示"
2481 "す (正の) 値が設定される。"
2482
2483 #.  .SH "NOTES"
2484 #.  .PP
2485 #.  The asynchronous I/O system calls were written by Benjamin LaHaise.
2486 #.  .SH AUTHOR
2487 #.  Kent Yoder.
2488 #. type: Plain text
2489 #: build/C/man2/io_cancel.2:107
2490 msgid ""
2491 "B<io_destroy>(2), B<io_getevents>(2), B<io_setup>(2), B<io_submit>(2), B<aio>"
2492 "(7)"
2493 msgstr ""
2494 "B<io_destroy>(2), B<io_getevents>(2), B<io_setup>(2), B<io_submit>(2), B<aio>"
2495 "(7)"
2496
2497 #. type: TH
2498 #: build/C/man2/io_destroy.2:23
2499 #, no-wrap
2500 msgid "IO_DESTROY"
2501 msgstr "IO_DESTROY"
2502
2503 #. type: Plain text
2504 #: build/C/man2/io_destroy.2:26
2505 msgid "io_destroy - destroy an asynchronous I/O context"
2506 msgstr "io_destroy - 非同期 I/O コンテキストの消去"
2507
2508 #.  .HP 17
2509 #.  .ad
2510 #.  .hy
2511 #. type: Plain text
2512 #: build/C/man2/io_destroy.2:37
2513 #, no-wrap
2514 msgid "B<int io_destroy(aio_context_t >I<ctx>B<);>\n"
2515 msgstr "B<int io_destroy(aio_context_t >I<ctx>B<);>\n"
2516
2517 #. type: Plain text
2518 #: build/C/man2/io_destroy.2:48
2519 msgid ""
2520 "B<io_destroy>()  removes the asynchronous I/O context from the list of I/O "
2521 "contexts and then destroys it.  B<io_destroy>()  can also cancel any "
2522 "outstanding asynchronous I/O actions on I<ctx> and block on completion."
2523 msgstr ""
2524 "B<io_destroy>()  は、I/O コンテキストのリストから指定された非同期 I/O コンテ"
2525 "キストを削除した後、そのコンテキストを消去する。 B<io_destroy>()  は、I<ctx> "
2526 "上に未処理の非同期 I/O 命令及び 完了キューのブロックの取り消しも行うことがで"
2527 "きる。"
2528
2529 #. type: Plain text
2530 #: build/C/man2/io_destroy.2:53
2531 msgid ""
2532 "On success, B<io_destroy>()  returns 0.  For the failure return, see NOTES."
2533 msgstr ""
2534 "成功した場合、 B<io_destroy>()  は 0 を返す。 失敗時の返り値については、「注"
2535 "意」の節を参照すること。"
2536
2537 #. type: Plain text
2538 #: build/C/man2/io_destroy.2:57
2539 msgid "The context pointed to is invalid."
2540 msgstr "データ構造の中に無効なデータを指しているものがある。"
2541
2542 #. type: Plain text
2543 #: build/C/man2/io_destroy.2:60
2544 msgid "The AIO context specified by I<ctx> is invalid."
2545 msgstr "I<ctx> で指定された AIO コンテキストが無効である。"
2546
2547 #. type: Plain text
2548 #: build/C/man2/io_destroy.2:64
2549 msgid "B<io_destroy>()  is not implemented on this architecture."
2550 msgstr "B<io_destroy>()  はこのアーキテクチャでは実装されていない。"
2551
2552 #. type: Plain text
2553 #: build/C/man2/io_destroy.2:72
2554 msgid ""
2555 "B<io_destroy>()  is Linux-specific and should not be used in programs that "
2556 "are intended to be portable."
2557 msgstr ""
2558 "B<io_destroy>()  は Linux 固有であり、移植を想定したプログラムで使用すべきで"
2559 "はない。"
2560
2561 #. type: Plain text
2562 #: build/C/man2/io_destroy.2:88
2563 msgid ""
2564 "The wrapper provided in I<libaio> for B<io_destroy>()  does not follow the "
2565 "usual C library conventions for indicating error: on error it returns a "
2566 "negated error number (the negative of one of the values listed in ERRORS).  "
2567 "If the system call is invoked via B<syscall>(2), then the return value "
2568 "follows the usual conventions for indicating an error: -1, with I<errno> set "
2569 "to a (positive) value that indicates the error."
2570 msgstr ""
2571 "I<libaio> で B<io_destroy>()  用に提供されているラッパー関数は、エラーの通知"
2572 "が通常の C ライブラリの 慣習にしたがっておらず、エラーの場合には負のエラー番"
2573 "号 (エラーの節に列挙されている値の一つを負にしたもの) が返り値となる。 "
2574 "B<syscall>(2)  経由でシステムコールを起動すると、返り値は通常のエラー通知の慣"
2575 "習に したがってものとなり、エラーの場合には -1 が返り、 I<errno> にエラーを示"
2576 "す (正の) 値が設定される。"
2577
2578 #.  .SH "NOTES"
2579 #.  .PP
2580 #.  The asynchronous I/O system calls were written by Benjamin LaHaise.
2581 #.  .SH AUTHOR
2582 #.  Kent Yoder.
2583 #. type: Plain text
2584 #: build/C/man2/io_destroy.2:101
2585 msgid ""
2586 "B<io_cancel>(2), B<io_getevents>(2), B<io_setup>(2), B<io_submit>(2), B<aio>"
2587 "(7)"
2588 msgstr ""
2589 "B<io_cancel>(2), B<io_getevents>(2), B<io_setup>(2), B<io_submit>(2), B<aio>"
2590 "(7)"
2591
2592 #. type: TH
2593 #: build/C/man2/io_getevents.2:23
2594 #, no-wrap
2595 msgid "IO_GETEVENTS"
2596 msgstr "IO_GETEVENTS"
2597
2598 #. type: TH
2599 #: build/C/man2/io_getevents.2:23
2600 #, no-wrap
2601 msgid "2008-07-04"
2602 msgstr "2008-07-04"
2603
2604 #. type: Plain text
2605 #: build/C/man2/io_getevents.2:26
2606 msgid "io_getevents - read asynchronous I/O events from the completion queue"
2607 msgstr "io_getevents - 完了キューから非同期 I/O イベントを読み出す"
2608
2609 #.  .ad l
2610 #.  .hy 0
2611 #.  #include <linux/aio.h>
2612 #. type: Plain text
2613 #: build/C/man2/io_getevents.2:33
2614 #, no-wrap
2615 msgid ""
2616 "B<#include E<lt>linux/time.hE<gt>>\n"
2617 "B<#include E<lt>libaio.hE<gt>>\n"
2618 msgstr ""
2619 "B<#include E<lt>linux/time.hE<gt>>\n"
2620 "B<#include E<lt>libaio.hE<gt>>\n"
2621
2622 #.  .HP 19
2623 #.  .ad
2624 #.  .hy
2625 #. type: Plain text
2626 #: build/C/man2/io_getevents.2:40
2627 #, no-wrap
2628 msgid ""
2629 "B<int io_getevents(aio_context_t >I<ctx_id>B<, long >I<min_nr>B<, long >I<nr>B<,>\n"
2630 "B<                 struct io_event *>I<events>B<, struct timespec *>I<timeout>B<);>\n"
2631 msgstr ""
2632 "B<int io_getevents(aio_context_t >I<ctx_id>B<, long >I<min_nr>B<, long >I<nr>B<,>\n"
2633 "B<                 struct io_event *>I<events>B<, struct timespec *>I<timeout>B<);>\n"
2634
2635 #. type: Plain text
2636 #: build/C/man2/io_getevents.2:54
2637 msgid ""
2638 "B<io_getevents>()  attempts to read at least I<min_nr> events and up to "
2639 "I<nr> events from the completion queue of the AIO context specified by "
2640 "I<ctx_id>.  I<timeout> specifies the amount of time to wait for events, "
2641 "where a NULL timeout waits until at least I<min_nr> events have been seen.  "
2642 "Note that I<timeout> is relative and will be updated if not NULL and the "
2643 "operation blocks."
2644 msgstr ""
2645 "B<io_getevents>()  は、少なくとも I<min_nr> の、最大 I<nr> 個の イベントを、 "
2646 "I<ctx_id> で指定された AIO (非同期 I/O) コンテキストの 完了キューから読み出そ"
2647 "うとする。 I<timeout> はイベント読み出しの待ち時間の合計を指定する。 タイムア"
2648 "ウトに NULL を指定した場合、少なくとも I<min_nr> 個のイベントが 読み出される"
2649 "まで待つことを意味する。 注意点を以下にあげる: I<timeout> は相対的な指定であ"
2650 "る。 NULL でない場合更新されることもありえる。 呼び出し元の動作は停止する。"
2651
2652 #. type: Plain text
2653 #: build/C/man2/io_getevents.2:60
2654 msgid ""
2655 "On success, B<io_getevents>()  returns the number of events read: 0 if no "
2656 "events are available, or less than I<min_nr> if the I<timeout> has elapsed.  "
2657 "For the failure return, see NOTES."
2658 msgstr ""
2659 "成功すると、 B<io_getevents>()  は読み出したイベント数を返す。 イベントが一つ"
2660 "も読み出されなかった場合は 0 が返され、 I<timeout> 時間が経過した場合は "
2661 "I<min_nr> 未満の値が返される。 失敗時の返り値については、「注意」の節を参照す"
2662 "ること。"
2663
2664 #. type: Plain text
2665 #: build/C/man2/io_getevents.2:64
2666 msgid "Either I<events> or I<timeout> is an invalid pointer."
2667 msgstr "I<events> または I<timeout> が無効なポインタである。"
2668
2669 #. type: Plain text
2670 #: build/C/man2/io_getevents.2:69
2671 msgid ""
2672 "I<ctx_id> is invalid.  I<min_nr> is out of range or I<nr> is out of range."
2673 msgstr ""
2674 "I<ctx_id> が無効である。もしくは、I<min_nr> または I<nr> が 範囲外の値であ"
2675 "る。"
2676
2677 #. type: Plain text
2678 #: build/C/man2/io_getevents.2:73
2679 msgid "Interrupted by a signal handler; see B<signal>(7)."
2680 msgstr "シグナルハンドラにより割り込まれた。 B<signal>(7)  参照。"
2681
2682 #. type: Plain text
2683 #: build/C/man2/io_getevents.2:77
2684 msgid "B<io_getevents>()  is not implemented on this architecture."
2685 msgstr "B<io_getevents>()  がこのアーキテクチャでは実装されていない。"
2686
2687 #. type: Plain text
2688 #: build/C/man2/io_getevents.2:85
2689 msgid ""
2690 "B<io_getevents>()  is Linux-specific and should not be used in programs that "
2691 "are intended to be portable."
2692 msgstr ""
2693 "B<io_getevents>()  は Linux 固有であり、移植を想定したプログラムで 使用すべき"
2694 "ではない。"
2695
2696 #. type: Plain text
2697 #: build/C/man2/io_getevents.2:101
2698 msgid ""
2699 "The wrapper provided in I<libaio> for B<io_getevents>()  does not follow the "
2700 "usual C library conventions for indicating error: on error it returns a "
2701 "negated error number (the negative of one of the values listed in ERRORS).  "
2702 "If the system call is invoked via B<syscall>(2), then the return value "
2703 "follows the usual conventions for indicating an error: -1, with I<errno> set "
2704 "to a (positive) value that indicates the error."
2705 msgstr ""
2706 "I<libaio> で B<io_getevents>()  用に提供されているラッパー関数は、エラーの通"
2707 "知が通常の C ライブラリの 慣習にしたがっておらず、エラーの場合には負のエラー"
2708 "番号 (エラーの節に列挙されている値の一つを負にしたもの) が返り値となる。 "
2709 "B<syscall>(2)  経由でシステムコールを起動すると、返り値は通常のエラー通知の慣"
2710 "習に したがってものとなり、エラーの場合には -1 が返り、 I<errno> にエラーを示"
2711 "す (正の) 値が設定される。"
2712
2713 #.  .SH "NOTES"
2714 #.  .PP
2715 #.  The asynchronous I/O system calls were written by Benjamin LaHaise.
2716 #.  .SH AUTHOR
2717 #.  Kent Yoder.
2718 #. type: Plain text
2719 #: build/C/man2/io_getevents.2:116
2720 msgid ""
2721 "B<io_cancel>(2), B<io_destroy>(2), B<io_setup>(2), B<io_submit>(2), B<aio>"
2722 "(7), B<time>(7)"
2723 msgstr ""
2724 "B<io_cancel>(2), B<io_destroy>(2), B<io_setup>(2), B<io_submit>(2), B<aio>"
2725 "(7), B<time>(7)"
2726
2727 #. type: TH
2728 #: build/C/man2/io_setup.2:23
2729 #, no-wrap
2730 msgid "IO_SETUP"
2731 msgstr "IO_SETUP"
2732
2733 #. type: Plain text
2734 #: build/C/man2/io_setup.2:26
2735 msgid "io_setup - create an asynchronous I/O context"
2736 msgstr "io_setup - 非同期 I/O コンテキストを作成する"
2737
2738 #.  .HP 15
2739 #.  .ad
2740 #.  .hy
2741 #. type: Plain text
2742 #: build/C/man2/io_setup.2:37
2743 #, no-wrap
2744 msgid "B<int io_setup(unsigned >I<nr_events>B<, aio_context_t *>I<ctxp>B<);>\n"
2745 msgstr "B<int io_setup(unsigned >I<nr_events>B<, aio_context_t *>I<ctxp>B<);>\n"
2746
2747 #. type: Plain text
2748 #: build/C/man2/io_setup.2:49
2749 msgid ""
2750 "B<io_setup>()  creates an asynchronous I/O context capable of receiving at "
2751 "least I<nr_events>.  I<ctxp> must not point to an AIO context that already "
2752 "exists, and must be initialized to 0 prior to the call.  On successful "
2753 "creation of the AIO context, I<*ctxp> is filled in with the resulting handle."
2754 msgstr ""
2755 "B<io_setup>()  は、少なくとも I<nr_events> 個のイベントを受信可能な 非同期 I/"
2756 "O (AIO) コンテキストの作成を行う。 I<ctxp> は、すでに存在する AIO コンテキス"
2757 "トを指していてはならず、 B<io_setup>()  の呼び出しの前に 0 に初期化されていな"
2758 "ければならない。 AIO コンテキストの作成に成功すると、I<*ctxp> に作成された "
2759 "AIO コンテキストへのポインタがセットされる。"
2760
2761 #. type: Plain text
2762 #: build/C/man2/io_setup.2:54
2763 msgid ""
2764 "On success, B<io_setup>()  returns 0.  For the failure return, see NOTES."
2765 msgstr ""
2766 "成功した場合、 B<io_setup>()  は 0 を返す。 失敗時の返り値については、「注"
2767 "意」の節を参照すること。"
2768
2769 #. type: Plain text
2770 #: build/C/man2/io_setup.2:58
2771 msgid ""
2772 "The specified I<nr_events> exceeds the user's limit of available events."
2773 msgstr ""
2774 "指定された I<nr_events> がユーザが使用できるイベント数の上限を越えている。"
2775
2776 #. type: Plain text
2777 #: build/C/man2/io_setup.2:61
2778 msgid "An invalid pointer is passed for I<ctxp>."
2779 msgstr "I<ctxp> に無効なポインタが指定されている。"
2780
2781 #. type: Plain text
2782 #: build/C/man2/io_setup.2:66
2783 msgid ""
2784 "I<ctxp> is not initialized, or the specified I<nr_events> exceeds internal "
2785 "limits.  I<nr_events> should be greater than 0."
2786 msgstr ""
2787 "I<ctxp> が初期化されていないか、指定された I<nr_events> が 内部の制限値を越え"
2788 "ている。また、 I<nr_events> は 0 より大きい値に 設定すべきである。"
2789
2790 #. type: TP
2791 #: build/C/man2/io_setup.2:66
2792 #, no-wrap
2793 msgid "B<ENOMEM>"
2794 msgstr "B<ENOMEM>"
2795
2796 #. type: Plain text
2797 #: build/C/man2/io_setup.2:69
2798 msgid "Insufficient kernel resources are available."
2799 msgstr "必要なカーネル・リソースを得られない。"
2800
2801 #. type: Plain text
2802 #: build/C/man2/io_setup.2:73
2803 msgid "B<io_setup>()  is not implemented on this architecture."
2804 msgstr "B<io_setup>()  がこのアーキテクチャでは実装されていない。"
2805
2806 #. type: Plain text
2807 #: build/C/man2/io_setup.2:81
2808 msgid ""
2809 "B<io_setup>()  is Linux-specific and should not be used in programs that are "
2810 "intended to be portable."
2811 msgstr ""
2812 "B<io_setup>()  は Linux 固有であり、移植を想定したプログラムで 使用すべきでは"
2813 "ない。"
2814
2815 #. type: Plain text
2816 #: build/C/man2/io_setup.2:97
2817 msgid ""
2818 "The wrapper provided in I<libaio> for B<io_setup>()  does not follow the "
2819 "usual C library conventions for indicating error: on error it returns a "
2820 "negated error number (the negative of one of the values listed in ERRORS).  "
2821 "If the system call is invoked via B<syscall>(2), then the return value "
2822 "follows the usual conventions for indicating an error: -1, with I<errno> set "
2823 "to a (positive) value that indicates the error."
2824 msgstr ""
2825 "I<libaio> で B<io_setup>()  用に提供されているラッパー関数は、エラーの通知が"
2826 "通常の C ライブラリの 慣習にしたがっておらず、エラーの場合には負のエラー番号 "
2827 "(エラーの節に列挙されている値の一つを負にしたもの) が返り値となる。 "
2828 "B<syscall>(2)  経由でシステムコールを起動すると、返り値は通常のエラー通知の慣"
2829 "習に したがってものとなり、エラーの場合には -1 が返り、 I<errno> にエラーを示"
2830 "す (正の) 値が設定される。"
2831
2832 #.  .SH "NOTES"
2833 #.  .PP
2834 #.  The asynchronous I/O system calls were written by Benjamin LaHaise.
2835 #.  .SH AUTHOR
2836 #.  Kent Yoder.
2837 #. type: Plain text
2838 #: build/C/man2/io_setup.2:108
2839 msgid ""
2840 "B<io_cancel>(2), B<io_destroy>(2), B<io_getevents>(2), B<io_submit>(2), "
2841 "B<aio>(7)"
2842 msgstr ""
2843 "B<io_cancel>(2), B<io_destroy>(2), B<io_getevents>(2), B<io_submit>(2), "
2844 "B<aio>(7)"
2845
2846 #. type: TH
2847 #: build/C/man2/io_submit.2:23
2848 #, no-wrap
2849 msgid "IO_SUBMIT"
2850 msgstr "IO_SUBMIT"
2851
2852 #. type: Plain text
2853 #: build/C/man2/io_submit.2:26
2854 msgid "io_submit - submit asynchronous I/O blocks for processing"
2855 msgstr "io_submit - 非同期 I/O ブロックを処理待ちキューに登録する"
2856
2857 #.  .HP 16
2858 #.  .ad
2859 #.  .hy
2860 #. type: Plain text
2861 #: build/C/man2/io_submit.2:38
2862 #, no-wrap
2863 msgid "B<int io_submit(aio_context_t >I<ctx_id>B<, long >I<nr>B<, struct iocb **>I<iocbpp>B<);>\n"
2864 msgstr "B<int io_submit(aio_context_t >I<ctx_id>B<, long >I<nr>B<, struct iocb **>I<iocbpp>B<);>\n"
2865
2866 #. type: Plain text
2867 #: build/C/man2/io_submit.2:48
2868 msgid ""
2869 "B<io_submit>()  queues I<nr> I/O request blocks for processing in the AIO "
2870 "context I<ctx_id>.  I<iocbpp> should be an array of I<nr> AIO control "
2871 "blocks, which will be submitted to context I<ctx_id>."
2872 msgstr ""
2873 "B<io_submit>()  は、AIO コンテキスト I<ctx_id> に I<nr> 個の I/O リクエストを"
2874 "処理待ちとしてキューに追加する。 I<iocbpp> は、AIO コンテキスト I<ctx_id> に"
2875 "登録される I<nr> 個の AIO 制御ブロックの配列になっていなければならない。"
2876
2877 #. type: Plain text
2878 #: build/C/man2/io_submit.2:54
2879 msgid ""
2880 "On success, B<io_submit>()  returns the number of I<iocb>s submitted (which "
2881 "may be 0 if I<nr> is zero).  For the failure return, see NOTES."
2882 msgstr ""
2883 "成功すると、 B<io_submit>()  は登録した I<iocb> の個数を返す (I<nr> が 0 の場"
2884 "合は 0 を返す)。 失敗時の返り値については、「注意」の節を参照すること。"
2885
2886 #. type: Plain text
2887 #: build/C/man2/io_submit.2:58
2888 msgid "Insufficient resources are available to queue any I<iocb>s."
2889 msgstr "何個かの I<iocb> をキューに入れるのに必要なリソースが得られない。"
2890
2891 #. type: Plain text
2892 #: build/C/man2/io_submit.2:61
2893 msgid "The file descriptor specified in the first I<iocb> is invalid."
2894 msgstr "先頭の I<iocb> に指定されたファイル・ディスクリプタが無効である。"
2895
2896 #. type: Plain text
2897 #: build/C/man2/io_submit.2:71
2898 msgid ""
2899 "The I<aio_context> specified by I<ctx_id> is invalid.  I<nr> is less than "
2900 "0.  The I<iocb> at *iocbpp[0] is not properly initialized, or the operation "
2901 "specified is invalid for the file descriptor in the I<iocb>."
2902 msgstr ""
2903 "I<ctx_id> で指定された I<aio_context> が無効である。 I<nr> が 0 未満である。 "
2904 "*iocbpp[0] の I<iocb> が適切に初期化されていないか、 指定された操作がその "
2905 "I<iocb> 中のファイル・ディスクリプタに対して 無効である。"
2906
2907 #. type: Plain text
2908 #: build/C/man2/io_submit.2:75
2909 msgid "B<io_submit>()  is not implemented on this architecture."
2910 msgstr "B<io_submit>()  はこのアーキテクチャでは実装されていない。"
2911
2912 #. type: Plain text
2913 #: build/C/man2/io_submit.2:83
2914 msgid ""
2915 "B<io_submit>()  is Linux-specific and should not be used in programs that "
2916 "are intended to be portable."
2917 msgstr ""
2918 "B<io_submit>()  は Linux 固有であり、移植を想定したプログラムで 使用すべきで"
2919 "はない。"
2920
2921 #. type: Plain text
2922 #: build/C/man2/io_submit.2:99
2923 msgid ""
2924 "The wrapper provided in I<libaio> for B<io_submit>()  does not follow the "
2925 "usual C library conventions for indicating error: on error it returns a "
2926 "negated error number (the negative of one of the values listed in ERRORS).  "
2927 "If the system call is invoked via B<syscall>(2), then the return value "
2928 "follows the usual conventions for indicating an error: -1, with I<errno> set "
2929 "to a (positive) value that indicates the error."
2930 msgstr ""
2931 "I<libaio> で B<io_submit>()  用に提供されているラッパー関数は、エラーの通知が"
2932 "通常の C ライブラリの 慣習にしたがっておらず、エラーの場合には負のエラー番号 "
2933 "(エラーの節に列挙されている値の一つを負にしたもの) が返り値となる。 "
2934 "B<syscall>(2)  経由でシステムコールを起動すると、返り値は通常のエラー通知の慣"
2935 "習に したがってものとなり、エラーの場合には -1 が返り、 I<errno> にエラーを示"
2936 "す (正の) 値が設定される。"
2937
2938 #.  .SH "NOTES"
2939 #.  .PP
2940 #.  The asynchronous I/O system calls were written by Benjamin LaHaise.
2941 #.  .SH AUTHOR
2942 #.  Kent Yoder.
2943 #. type: Plain text
2944 #: build/C/man2/io_submit.2:110
2945 msgid ""
2946 "B<io_cancel>(2), B<io_destroy>(2), B<io_getevents>(2), B<io_setup>(2), B<aio>"
2947 "(7)"
2948 msgstr ""
2949 "B<io_cancel>(2), B<io_destroy>(2), B<io_getevents>(2), B<io_setup>(2), B<aio>"
2950 "(7)"
2951
2952 #. type: TH
2953 #: build/C/man3/lio_listio.3:23
2954 #, no-wrap
2955 msgid "LIO_LISTIO"
2956 msgstr "LIO_LISTIO"
2957
2958 #. type: TH
2959 #: build/C/man3/lio_listio.3:23
2960 #, no-wrap
2961 msgid "2010-10-20"
2962 msgstr "2010-10-20"
2963
2964 #. type: Plain text
2965 #: build/C/man3/lio_listio.3:26
2966 msgid "lio_listio - initiate a list of I/O requests"
2967 msgstr ""
2968
2969 #. type: Plain text
2970 #: build/C/man3/lio_listio.3:32
2971 #, no-wrap
2972 msgid ""
2973 "B<int lio_listio(int >I<mode>B<, struct aiocb *const >I<aiocb_list>B<[],>\n"
2974 "B<               int >I<nitems>B<, struct sigevent *>I<sevp>B<);>\n"
2975 msgstr ""
2976 "B<int lio_listio(int >I<mode>B<, struct aiocb *const >I<aiocb_list>B<[],>\n"
2977 "B<               int >I<nitems>B<, struct sigevent *>I<sevp>B<);>\n"
2978
2979 #. type: Plain text
2980 #: build/C/man3/lio_listio.3:40
2981 msgid ""
2982 "The B<lio_listio>()  function initiates the list of I/O operations described "
2983 "by the array I<aiocb_list>."
2984 msgstr ""
2985
2986 #. type: Plain text
2987 #: build/C/man3/lio_listio.3:44
2988 msgid "The I<mode> operation has one of the following values:"
2989 msgstr ""
2990
2991 #. type: TP
2992 #: build/C/man3/lio_listio.3:44
2993 #, no-wrap
2994 msgid "B<LIO_WAIT>"
2995 msgstr "B<LIO_WAIT>"
2996
2997 #. type: Plain text
2998 #: build/C/man3/lio_listio.3:50
2999 msgid ""
3000 "The call blocks until all operations are complete.  The I<sevp> argument is "
3001 "ignored."
3002 msgstr ""
3003
3004 #. type: TP
3005 #: build/C/man3/lio_listio.3:50
3006 #, no-wrap
3007 msgid "B<LIO_NOWAIT>"
3008 msgstr "B<LIO_NOWAIT>"
3009
3010 #. type: Plain text
3011 #: build/C/man3/lio_listio.3:62
3012 msgid ""
3013 "The I/O operations are queued for processing and the call returns "
3014 "immediately.  When the I/O operations complete, asynchronous notification "
3015 "occurs, as specified by the I<sevp> argument; see B<sigevent>(7)  for "
3016 "details.  If I<sevp> is NULL, no asynchronous notification occurs."
3017 msgstr ""
3018
3019 #. type: Plain text
3020 #: build/C/man3/lio_listio.3:76
3021 msgid ""
3022 "The I<aiocb_list> argument is an array of pointers to I<aiocb> structures "
3023 "that describe I/O operations.  These operations are executed in an "
3024 "unspecified order.  The I<nitems> argument specifies the size of the array "
3025 "I<aiocb_list>.  NULL pointers in I<aiocb_list> are ignored."
3026 msgstr ""
3027
3028 #. type: Plain text
3029 #: build/C/man3/lio_listio.3:82
3030 msgid ""
3031 "In each control block in I<aiocb_list>, the I<aio_lio_opcode> field "
3032 "specifies the I/O operation to be initiated, as follows:"
3033 msgstr ""
3034
3035 #. type: TP
3036 #: build/C/man3/lio_listio.3:82
3037 #, no-wrap
3038 msgid "B<LIO_READ>"
3039 msgstr "B<LIO_READ>"
3040
3041 #. type: Plain text
3042 #: build/C/man3/lio_listio.3:88
3043 msgid ""
3044 "Initiate a read operation.  The operation is queued as for a call to "
3045 "B<aio_read>(3)  specifying this control block."
3046 msgstr ""
3047
3048 #. type: TP
3049 #: build/C/man3/lio_listio.3:88
3050 #, no-wrap
3051 msgid "B<LIO_WRITE>"
3052 msgstr "B<LIO_WRITE>"
3053
3054 #. type: Plain text
3055 #: build/C/man3/lio_listio.3:94
3056 msgid ""
3057 "Initiate a write operation.  The operation is queued as for a call to "
3058 "B<aio_write>(3)  specifying this control block."
3059 msgstr ""
3060
3061 #. type: TP
3062 #: build/C/man3/lio_listio.3:94
3063 #, no-wrap
3064 msgid "B<LIO_NOP>"
3065 msgstr "B<LIO_NOP>"
3066
3067 #. type: Plain text
3068 #: build/C/man3/lio_listio.3:97
3069 msgid "Ignore this control block."
3070 msgstr ""
3071
3072 #. type: Plain text
3073 #: build/C/man3/lio_listio.3:107
3074 msgid ""
3075 "The remaining fields in each control block have the same meanings as for "
3076 "B<aio_read>(3)  and B<aio_write>(3).  The I<aio_sigevent> fields of each "
3077 "control block can be used to specify notifications for the individual I/O "
3078 "operations (see B<sigevent>(7))."
3079 msgstr ""
3080
3081 #. type: Plain text
3082 #: build/C/man3/lio_listio.3:117
3083 msgid ""
3084 "If I<mode> is B<LIO_NOWAIT>, B<lio_listio>()  returns 0 if all I/O "
3085 "operations are successfully queued.  Otherwise, -1 is returned, and I<errno> "
3086 "is set to indicate the error."
3087 msgstr ""
3088
3089 #. type: Plain text
3090 #: build/C/man3/lio_listio.3:127
3091 msgid ""
3092 "If I<mode> is B<LIO_WAIT>, B<lio_listio>()  returns 0 when all of the I/O "
3093 "operations have completed successfully.  Otherwise, -1 is returned, and "
3094 "I<errno> is set to indicate the error."
3095 msgstr ""
3096
3097 #. type: Plain text
3098 #: build/C/man3/lio_listio.3:145
3099 msgid ""
3100 "The return status from B<lio_listio>()  provides information only about the "
3101 "call itself, not about the individual I/O operations.  One or more of the I/"
3102 "O operations may fail, but this does not prevent other operations "
3103 "completing.  The status of individual I/O operations in I<aiocb_list> can be "
3104 "determined using B<aio_error>(3).  When an operation has completed, its "
3105 "return status can be obtained using B<aio_return>(3).  Individual I/O "
3106 "operations can fail for the reasons described in B<aio_read>(3)  and "
3107 "B<aio_write>(3)."
3108 msgstr ""
3109
3110 #. type: Plain text
3111 #: build/C/man3/lio_listio.3:149
3112 msgid "The B<lio_listio>()  function may fail for the following reasons:"
3113 msgstr ""
3114
3115 #.  Doesn't happen in glibc(?)
3116 #. type: Plain text
3117 #: build/C/man3/lio_listio.3:160
3118 msgid ""
3119 "The number of I/O operations specified by I<nitems> would cause the limit "
3120 "B<AIO_MAX> to be exceeded."
3121 msgstr ""
3122
3123 #.  Doesn't happen in glibc(?)
3124 #. type: Plain text
3125 #: build/C/man3/lio_listio.3:168
3126 msgid "I<mode> is invalid, or I<nitems> exceeds the limit B<AIO_LISTIO_MAX>."
3127 msgstr ""
3128
3129 #. type: Plain text
3130 #: build/C/man3/lio_listio.3:177
3131 msgid ""
3132 "I<mode> was B<LIO_WAIT> and a signal was caught before all I/O operations "
3133 "completed.  (This may even be one of the signals used for asynchronous I/O "
3134 "completion notification.)"
3135 msgstr ""
3136
3137 #. type: TP
3138 #: build/C/man3/lio_listio.3:177
3139 #, no-wrap
3140 msgid "B<EIO>"
3141 msgstr "B<EIO>"
3142
3143 #.  e.g., ioa_reqprio or aio_lio_opcode was invalid
3144 #. type: Plain text
3145 #: build/C/man3/lio_listio.3:185
3146 msgid ""
3147 "One of more of the operations specified by I<aiocb_list> failed.  The "
3148 "application can check the status of each operation using B<aio_return>(3)."
3149 msgstr ""
3150
3151 #. type: Plain text
3152 #: build/C/man3/lio_listio.3:200
3153 msgid ""
3154 "If B<lio_listio>()  fails with the error B<EAGAIN>, B<EINTR>, or B<EIO>, "
3155 "then some of the operations in I<aiocb_list> may have been initiated.  If "
3156 "B<lio_listio>()  fails for any other reason, then none of the I/O operations "
3157 "has been initiated."
3158 msgstr ""
3159
3160 #. type: Plain text
3161 #: build/C/man3/lio_listio.3:204
3162 msgid "The B<lio_listio>()  function is available since glibc 2.1."
3163 msgstr ""
3164
3165 #.  or the control block of the operation
3166 #. type: Plain text
3167 #: build/C/man3/lio_listio.3:214
3168 msgid ""
3169 "It is a good idea to zero out the control blocks before use.  The control "
3170 "blocks must not be changed while the I/O operations are in progress.  The "
3171 "buffer areas being read into or written from must not be accessed during the "
3172 "operations or undefined results may occur.  The memory areas involved must "
3173 "remain valid."
3174 msgstr ""
3175
3176 #. type: Plain text
3177 #: build/C/man3/lio_listio.3:226
3178 msgid ""
3179 "B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_return>(3), "
3180 "B<aio_suspend>(3), B<aio_write>(3), B<aio>(7)"
3181 msgstr ""
3182 "B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_return>(3), "
3183 "B<aio_suspend>(3), B<aio_write>(3), B<aio>(7)"
3184
3185 #~ msgid "2003-11-14"
3186 #~ msgstr "2003-11-14"
3187
3188 #~ msgid "POSIX.1-2001."
3189 #~ msgstr "POSIX.1-2001."
3190
3191 #~ msgid ""
3192 #~ "This function returns B<EINPROGRESS> if the request has not been "
3193 #~ "completed yet.  It returns B<ECANCELED> if the request was canceled.  It "
3194 #~ "returns 0 if the request completed successfully.  Otherwise an error "
3195 #~ "value is returned, the same value that would have been stored in the "
3196 #~ "I<errno> variable in case of a synchronous I<read>, I<write>, I<fsync>, "
3197 #~ "or I<fdatasync> request.  On error, the error value is returned."
3198 #~ msgstr ""
3199 #~ "リクエストがまだ完了していない場合、この関数は B<EINPROGRESS> を返す。リク"
3200 #~ "エストがキャンセルされた場合、この関数は B<ECANCELED> を返す。リクエストが"
3201 #~ "成功して完了した場合、この関数は 0 を返す。 それ以外の場合はエラー値が返さ"
3202 #~ "れる。 このエラー値は、同期 I<read>, I<write>, I<fsync>, I<fdatasync> リク"
3203 #~ "エストの場合に I<errno> に格納されるのと同じ値である。 エラーの場合はエ"
3204 #~ "ラー値が返される。"
3205
3206 #~ msgid ""
3207 #~ "B<aio_cancel>(3), B<aio_error>(3), B<aio_read>(3), B<aio_return>(3), "
3208 #~ "B<aio_suspend>(3), B<aio_write>(3)"
3209 #~ msgstr ""
3210 #~ "B<aio_cancel>(3), B<aio_error>(3), B<aio_read>(3), B<aio_return>(3), "
3211 #~ "B<aio_suspend>(3), B<aio_write>(3)"
3212
3213 #~ msgid ""
3214 #~ "The B<aio_read>()  function requests an asynchronous \"n = read(fd, buf, "
3215 #~ "count)\" with fd, buf, count given by I<aiocbp-E<gt>aio_fildes>, I<aiocbp-"
3216 #~ "E<gt>aio_buf>, I<aiocbp-E<gt>aio_nbytes>, respectively.  The return "
3217 #~ "status n can be retrieved upon completion using B<aio_return>(3)."
3218 #~ msgstr ""
3219 #~ "B<aio_read>()  関数は非同期の \"n = read(fd, buf, count)\" をリクエストす"
3220 #~ "る。 ここで fd, buf, count は、それぞれ I<aiocbp-E<gt>aio_fildes>, "
3221 #~ "I<aiocbp-E<gt>aio_buf>, I<aiocbp-E<gt>aio_nbytes> で与えられる。 返り値 "
3222 #~ "(return status) n は、完了時に B<aio_return>(3)  を使って取得できる。"
3223
3224 #~ msgid ""
3225 #~ "B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_return>(3), "
3226 #~ "B<aio_suspend>(3), B<aio_write>(3)"
3227 #~ msgstr ""
3228 #~ "B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_return>(3), "
3229 #~ "B<aio_suspend>(3), B<aio_write>(3)"
3230
3231 #~ msgid ""
3232 #~ "B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_read>(3), "
3233 #~ "B<aio_suspend>(3), B<aio_write>(3)"
3234 #~ msgstr ""
3235 #~ "B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_read>(3), "
3236 #~ "B<aio_suspend>(3), B<aio_write>(3)"
3237
3238 #~ msgid ""
3239 #~ "The B<aio_suspend>()  function suspends the calling process until at "
3240 #~ "least one of the asynchronous I/O requests in the list I<cblist> of "
3241 #~ "length I<n> have completed, a signal is delivered, or I<timeout> is not "
3242 #~ "NULL and the time interval it indicates has passed."
3243 #~ msgstr ""
3244 #~ "B<aio_suspend>()  関数は、長さ I<n> のリスト I<cblist> に含まれる非同期 I/"
3245 #~ "O リクエストのうち少なくとも 1 つが完了するか、 シグナルが配送されるか、 "
3246 #~ "I<timeout> が NULL でなく、かつその時間が過ぎるまで、 呼び出したプロセスを"
3247 #~ "停止 (suspend) する。"
3248
3249 #~ msgid ""
3250 #~ "The B<aio_write>()  function requests an asynchronous \"n = write(fd, "
3251 #~ "buf, count)\" with fd, buf, count given by I<aiocbp-E<gt>aio_fildes>, "
3252 #~ "I<aiocbp-E<gt>aio_buf>, I<aiocbp-E<gt>aio_nbytes>, respectively.  The "
3253 #~ "return status n can be retrieved upon completion using B<aio_return>(3)."
3254 #~ msgstr ""
3255 #~ "B<aio_write>()  関数は非同期の \"n = write(fd, buf, count)\" をリクエスト"
3256 #~ "する。 ここで fd, buf, count は、それぞれ I<aiocbp-E<gt>aio_fildes>, "
3257 #~ "I<aiocbp-E<gt>aio_buf>, I<aiocbp-E<gt>aio_nbytes> で与えられる。 返り値 "
3258 #~ "(return status) n は、完了時に B<aio_return>(3)  を使って取得できる。"
3259
3260 #~ msgid ""
3261 #~ "B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_read>(3), "
3262 #~ "B<aio_return>(3), B<aio_suspend>(3)"
3263 #~ msgstr ""
3264 #~ "B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_read>(3), "
3265 #~ "B<aio_return>(3), B<aio_suspend>(3)"