OSDN Git Service

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