source: rtems/doc/posix_users/io.t @ d2bfbaf

4.104.114.84.95
Last change on this file since d2bfbaf was d2bfbaf, checked in by Joel Sherrill <joel.sherrill@…>, on 11/16/99 at 21:56:45

Fixed spacing.

  • Property mode set to 100644
File size: 23.0 KB
Line 
1@c
2@c COPYRIGHT (c) 1988-1999.
3@c On-Line Applications Research Corporation (OAR).
4@c All rights reserved.
5@c
6@c $Id$
7@c
8
9@chapter Input and Output Primitives Manager
10
11@section Introduction
12
13The input and output primitives manager is ...
14
15The directives provided by the input and output primitives manager are:
16
17@itemize @bullet
18@item @code{pipe} - Create an Inter-Process Channel
19@item @code{dup} - Duplicates an open file descriptor
20@item @code{dup2} - Duplicates an open file descriptor
21@item @code{close} - Closes a file
22@item @code{read} - Reads from a file
23@item @code{write} - Writes to a file
24@item @code{fcntl} - Manipulates an open file descriptor
25@item @code{lseek} - Reposition read/write file offset
26@item @code{fsync} - Synchronize file complete in-core state with that on disk
27@item @code{fdatasync} - Synchronize file in-core data with that on disk
28@item @code{mount} - Mount a file system
29@item @code{umount} - Unmount file systems
30@item @code{aio_read} - Asynchronous Read
31@item @code{aio_write} - Asynchronous Write
32@item @code{lio_listio} - List Directed I/O
33@item @code{aio_error} - Retrieve Error Status of Asynchronous I/O Operation
34@item @code{aio_return} - Retrieve Return Status Asynchronous I/O Operation
35@item @code{aio_cancel} - Cancel Asynchronous I/O Request
36@item @code{aio_suspend} - Wait for Asynchronous I/O Request
37@item @code{aio_fsync} - Asynchronous File Synchronization
38@end itemize
39
40@section Background
41
42There is currently no text in this section.
43
44@section Operations
45
46There is currently no text in this section.
47
48@section Directives
49
50This section details the input and output primitives manager's directives.
51A subsection is dedicated to each of this manager's directives
52and describes the calling sequence, related constants, usage,
53and status codes.
54
55@c
56@c
57@c
58@page
59@subsection pipe - Create an Inter-Process Channel
60
61@findex pipe
62@cindex  create an inter
63
64@subheading CALLING SEQUENCE:
65
66@ifset is-C
67@example
68int pipe(
69);
70@end example
71@end ifset
72
73@ifset is-Ada
74@end ifset
75
76@subheading STATUS CODES:
77
78@table @b
79@item E
80The
81
82@end table
83
84@subheading DESCRIPTION:
85
86@subheading NOTES:
87
88This routine is not currently supported by RTEMS but could be
89in a future version.
90
91@c
92@c
93@c
94@page
95@subsection dup - Duplicates an open file descriptor
96
97@findex dup
98@cindex  duplicates an open file descriptor
99
100@subheading CALLING SEQUENCE:
101
102@ifset is-C
103@example
104#include <unistd.h>
105
106int dup(
107  int fildes
108);
109@end example
110@end ifset
111
112@ifset is-Ada
113@end ifset
114
115@subheading STATUS CODES:
116
117@table @b
118@item EBADF
119Invalid file descriptor.
120
121@item EINTR
122Function was interrupted by a signal.
123
124@item EMFILE
125The process already has the maximum number of file descriptors open
126and tried to open a new one.
127@end table
128
129@subheading DESCRIPTION:
130
131The @code{dup} function returns the lowest numbered available file
132descriptor. This new desciptor refers to the same open file as the
133original descriptor and shares any locks.
134
135@subheading NOTES:
136
137NONE
138
139@c
140@c
141@c
142@page
143@subsection dup2 - Duplicates an open file descriptor
144
145@findex dup2
146@cindex  duplicates an open file descriptor
147
148@subheading CALLING SEQUENCE:
149
150@ifset is-C
151@example
152#include <unistd.h>
153
154int dup2(
155  int fildes,
156  int fildes2
157);
158@end example
159@end ifset
160
161@ifset is-Ada
162@end ifset
163
164@subheading STATUS CODES:
165
166@table @b
167@item EBADF
168Invalid file descriptor.
169
170@item EINTR
171Function was interrupted by a signal.
172
173@item EMFILE
174The process already has the maximum number of file descriptors open
175and tried to open a new one.
176@end table
177
178@subheading DESCRIPTION:
179
180@code{Dup2} creates a copy of the file descriptor @code{oldfd}.
181
182The old and new descriptors may be used interchangeably. They share locks, file
183position pointers and flags; for example, if the file position is modified by using
184@code{lseek} on one of the descriptors, the position is also changed for the other.
185
186@subheading NOTES:
187
188NONE
189
190@c
191@c
192@c
193@page
194@subsection close - Closes a file.
195
196@findex close
197@cindex  closes a file.
198
199@subheading CALLING SEQUENCE:
200
201@ifset is-C
202@example
203#include <unistd.h>
204
205int close(
206  int fildes
207);
208@end example
209@end ifset
210
211@ifset is-Ada
212@end ifset
213
214@subheading STATUS CODES:
215
216@table @b
217@item EBADF
218Invalid file descriptor
219
220@item EINTR
221Function was interrupted by a signal.
222@end table
223
224@subheading DESCRIPTION:
225
226The @code{close()} function deallocates the file descriptor named by
227@code{fildes} and makes it available for reuse. All outstanding
228record locks owned by this process for the file are unlocked.
229
230@subheading NOTES:
231
232A signal can interrupt the @code{close()} function. In that case,
233@code{close()} returns -1 with @code{errno} set to EINTR. The file
234may or may not be closed.
235
236@c
237@c
238@c
239@page
240@subsection read - Reads from a file.
241
242@findex read
243@cindex  reads from a file.
244
245@subheading CALLING SEQUENCE:
246
247@ifset is-C
248@example
249#include <unistd.h>
250
251int read(
252  int           fildes,
253  void         *buf,
254  unsigned int  nbyte
255);
256@end example
257@end ifset
258
259@ifset is-Ada
260@end ifset
261
262@subheading STATUS CODES:
263
264On error, this routine returns -1 and sets @code{errno} to one of
265the following:
266
267@table @b
268@item EAGAIN
269The O_NONBLOCK flag is set for a file descriptor and the process
270would be delayed in the I/O operation.
271
272@item EBADF
273Invalid file descriptor
274
275@item EINTR
276Function was interrupted by a signal.
277
278@item EIO
279Input or output error
280
281@end table
282
283@subheading DESCRIPTION:
284
285The @code{read()} function reads @code{nbyte} bytes from the file
286associated with @code{fildes} into the buffer pointed to by @code{buf}.
287
288The @code{read()} function returns the number of bytes actually read
289and placed in the buffer. This will be less than @code{nbyte} if:
290
291@itemize @bullet
292
293@item The number of bytes left in the file is less than @code{nbyte}.
294
295@item The @code{read()} request was interrupted by a signal.
296
297@item The file is a pipe or FIFO or special file with less than @code{nbytes}
298immediately available for reading.
299
300@end itemize
301
302When attempting to read from any empty pipe or FIFO:
303
304
305@itemize @bullet
306
307@item If no process has the pipe open for writing, zero is returned to
308indicate end-of-file.
309
310@item If some process has the pipe open for writing and O_NONBLOCK is set,
311-1 is returned and @code{errno} is set to EAGAIN.
312
313@item If some process has the pipe open for writing and O_NONBLOCK is clear,
314@code{read()} waits for some data to be written or the pipe to be closed.
315
316@end itemize
317
318
319When attempting to read from a file other than a pipe or FIFO and no data
320is available.
321
322@itemize @bullet
323
324@item If O_NONBLOCK is set, -1 is returned and @code{errno} is set to EAGAIN.
325
326@item If O_NONBLOCK is clear, @code{read()} waits for some data to become
327available.
328
329@item The O_NONBLOCK flag is ignored if data is available.
330
331@end itemize
332
333@subheading NOTES:
334
335NONE
336
337@c
338@c
339@c
340@page
341@subsection write - Writes to a file
342
343@findex write
344@cindex  writes to a file
345
346@subheading CALLING SEQUENCE:
347
348@ifset is-C
349@example
350#include <unistd.h>
351
352int write(
353  int           fildes,
354  const void   *buf,
355  unsigned int  nbytes
356);
357@end example
358@end ifset
359
360@ifset is-Ada
361@end ifset
362
363@subheading STATUS CODES:
364
365@table @b
366@item EAGAIN
367The O_NONBLOCK flag is set for a file descriptor and the process
368would be delayed in the I/O operation.
369
370@item EBADF
371Invalid file descriptor
372
373@item EFBIG
374An attempt was made to write to a file that exceeds the maximum file
375size
376
377@item EINTR
378The function was interrupted by a signal.
379
380@item EIO
381Input or output error.
382
383@item ENOSPC
384No space left on disk.
385
386@item EPIPE
387Attempt to write to a pope or FIFO with no reader.
388
389@end table
390
391@subheading DESCRIPTION:
392
393The @code{write()} function writes @code{nbyte} from the array pointed
394to by @code{buf} into the file associated with @code{fildes}.
395
396If @code{nybte} is zero and the file is a regular file, the @code{write()}
397function returns zero and has no other effect. If @code{nbyte} is zero
398and the file is a special file, te results are not portable.
399
400The @code{write()} function returns the number of bytes written. This
401number will be less than @code{nbytes} if there is an error. It will never
402be greater than @code{nbytes}.
403
404@subheading NOTES:
405
406NONE
407
408@c
409@c
410@c
411@page
412@subsection fcntl - Manipulates an open file descriptor
413
414@findex fcntl
415@cindex  manipulates an open file descriptor
416
417@subheading CALLING SEQUENCE:
418
419@ifset is-C
420@example
421#include <sys/types.h>
422#include <fcntl.h>
423#include <unistd.h>
424
425int fcntl(
426  int fildes,
427  int cmd
428);
429@end example
430@end ifset
431
432@ifset is-Ada
433@end ifset
434
435@subheading STATUS CODES:
436
437@table @b
438@item EACCESS
439Search permission is denied for a direcotry in a file's path
440prefix.
441
442@item EAGAIN
443The O_NONBLOCK flag is set for a file descriptor and the process
444would be delayed in the I/O operation.
445
446@item EBADF
447Invalid file descriptor
448
449@item EDEADLK
450An @code{fcntl} with function F_SETLKW would cause a deadlock.
451
452@item EINTR
453The functioin was interrupted by a signal.
454
455@item EINVAL
456Invalid argument
457
458@item EMFILE
459Too many file descriptor or in use by the process.
460
461@item ENOLCK
462No locks available
463
464@end table
465
466@subheading DESCRIPTION:
467
468@code{fcntl()} performs one of various miscellaneous operations on
469@code{fd}. The operation in question is determined by @code{cmd}:
470
471@table @b
472
473@item F_DUPFD
474Makes @code{arg} be a copy of @code{fd}, closing @code{fd} first if necessary.
475
476The same functionality can be more easily achieved by using @code{dup2()}.
477
478The old and new descriptors may be used interchangeably. They share locks,
479file position pointers and flags; for example, if the file position is
480modified by using @code{lseek()} on one of the descriptors, the position is
481also changed for the other.
482
483The two descriptors do not share the close-on-exec flag, however. The
484close-on-exec flag of the copy is off, meaning that it will be closed on
485exec.
486
487On success, the new descriptor is returned.
488
489@item F_GETFD
490Read the close-on-exec flag. If the low-order bit is 0, the file will
491remain open across exec, otherwise it will be closed.
492
493@item F_SETFD
494Set the close-on-exec flag to the value specified by @code{arg} (only the least
495significant bit is used).
496
497@item F_GETFL
498Read the descriptor's flags (all flags (as set by open()) are returned).
499
500@item F_SETFL
501Set the descriptor's flags to the value specified by @code{arg}. Only
502@code{O_APPEND} and @code{O_NONBLOCK} may be set.
503
504The flags are shared between copies (made with @code{dup()} etc.) of the same
505file descriptor.
506
507The flags and their semantics are described in @code{open()}.
508
509@item F_GETLK, F_SETLK and F_SETLKW
510Manage discretionary file locks. The third argument @code{arg} is a pointer to a
511struct flock (that may be overwritten by this call).
512
513@item F_GETLK
514Return the flock structure that prevents us from obtaining the lock, or set the
515@code{l_type} field of the lock to @code{F_UNLCK} if there is no obstruction.
516
517@item F_SETLK
518The lock is set (when @code{l_type} is @code{F_RDLCK} or @code{F_WRLCK}) or
519cleared (when it is @code{F_UNLCK}. If lock is held by someone else, this
520call returns -1 and sets @code{errno} to EACCES or EAGAIN.
521
522@item F_SETLKW
523Like @code{F_SETLK}, but instead of returning an error we wait for the lock to
524be released.
525
526@item F_GETOWN
527Get the process ID (or process group) of the owner of a socket.
528
529Process groups are returned as negative values.
530
531@item F_SETOWN
532Set the process or process group that owns a socket.
533
534For these commands, ownership means receiving @code{SIGIO} or @code{SIGURG}
535signals.
536
537Process groups are specified using negative values.
538
539@end table
540
541@subheading NOTES:
542
543The errors returned by @code{dup2} are different from those returned by
544@code{F_DUPFD}.
545
546@c
547@c
548@c
549@page
550@subsection lseek - Reposition read/write file offset
551
552@findex lseek
553@cindex  reposition read/write file offset
554
555@subheading CALLING SEQUENCE:
556
557@ifset is-C
558@example
559#include <sys/types.h>
560#include <unistd.h>
561
562int lseek(
563  int    fildes,
564  off_t  offset,
565  int    whence
566);
567@end example
568@end ifset
569
570@ifset is-Ada
571@end ifset
572
573@subheading STATUS CODES:
574
575@table @b
576@item EBADF
577@code{Fildes} is not an open file descriptor.
578
579@item ESPIPE
580@code{Fildes} is associated with a pipe, socket or FIFO.
581
582@item EINVAL
583@code{Whence} is not a proper value.
584
585@end table
586
587@subheading DESCRIPTION:
588
589The @code{lseek} function repositions the offset of the file descriptor
590@code{fildes} to the argument offset according to the directive whence.
591The argument @code{fildes} must be an open file descriptor. @code{Lseek}
592repositions the file pointer fildes as follows:
593
594@itemize @bullet
595
596@item
597If @code{whence} is SEEK_SET, the offset is set to @code{offset} bytes.
598
599@item
600If @code{whence} is SEEK_CUR, the offset is set to its current location
601plus offset bytes.
602
603@item
604If @code{whence} is SEEK_END, the offset is set to the size of the
605file plus @code{offset} bytes.
606
607@end itemize
608
609The @code{lseek} function allows the file offset to be set beyond the end
610of the existing end-of-file of the file. If data is later written at this
611point, subsequent reads of the data in the gap return bytes of zeros
612(until data is actually written into the gap).
613
614Some devices are incapable of seeking. The value of the pointer associated
615with such a device is undefined.
616
617@subheading NOTES:
618
619NONE
620
621@c
622@c
623@c
624@page
625@subsection fsync - Synchronize file complete in-core state with that on disk
626
627@findex fsync
628@cindex  synchronize file complete in
629
630@subheading CALLING SEQUENCE:
631
632@ifset is-C
633@example
634int fsync(
635  int fd
636);
637@end example
638@end ifset
639
640@ifset is-Ada
641@end ifset
642
643@subheading STATUS CODES:
644
645On success, zero is returned. On error, -1 is returned, and @code{errno}
646is set appropriately.
647
648@table @b
649@item EBADF
650@code{fd} is not a valid descriptor open for writing
651
652@item EINVAL
653@code{fd} is bound to a special file which does not support support synchronization
654
655@item EROFS
656@code{fd} is bound to a special file which does not support support synchronization
657
658@item EIO
659An error occurred during synchronization
660
661@end table
662
663@subheading DESCRIPTION:
664
665@code{fsync} copies all in-core parts of a file to disk.
666
667@subheading NOTES:
668
669NONE
670
671@c
672@c
673@c
674@page
675@subsection fdatasync - Synchronize file in-core data with that on disk.
676
677@findex fdatasync
678@cindex  synchronize file in
679
680@subheading CALLING SEQUENCE:
681
682@ifset is-C
683@example
684int fdatasync(
685  int fd
686);
687@end example
688@end ifset
689
690@ifset is-Ada
691@end ifset
692
693@subheading STATUS CODES:
694
695On success, zero is returned. On error, -1 is returned, and @code{errno} is
696set appropriately.
697
698@table @b
699@item EBADF
700@code{fd} is not a valid file descriptor open for writing.
701
702@item EINVAL
703@code{fd} is bound to a special file which does not support synchronization.
704
705@item EIO
706An error occurred during synchronization.
707
708@item EROFS
709@code{fd} is bound to a special file which dows not support synchronization.
710
711@end table
712
713@subheading DESCRIPTION:
714
715@code{fdatasync} flushes all data buffers of a file to disk (before the system call
716returns). It resembles @code{fsync} but is not required to update the metadata such
717as access time.
718
719Applications that access databases or log files often write a tiny data fragment
720(e.g., one line in a log file) and then call @code{fsync} immediately in order to
721ensure that the written data is physically stored on the harddisk. Unfortunately,
722fsync will always initiate two write operations: one for the newly written data and
723another one in order to update the modification time stored in the inode. If the
724modification time is not a part of the transaction concept @code{fdatasync} can be
725used to avoid unnecessary inode disk write operations.
726
727@subheading NOTES:
728
729NONE
730
731@c
732@c
733@c
734@page
735@subsection mount - Mount a file system
736
737@findex mount
738@cindex  mount a file system
739
740@subheading CALLING SEQUENCE:
741
742@ifset is-C
743@example
744#include <sys/mount.h>
745#include <linux/fs.h>
746
747int mount(
748  const char   *specialfile,
749  const char    dir,
750  const char    filesystemtype,
751  unsigned long rwflag,
752  const void    data
753);
754@end example
755@end ifset
756
757@ifset is-Ada
758@end ifset
759
760@subheading STATUS CODES:
761
762@table @b
763@item EPERM
764The user is not the super-user.
765
766@item ENODEV
767@code{filesystemtype} not configured in the kernel.
768
769@item ENOTBLK
770@code{specialfile} is not a block device (if a device was required).
771
772@item EBUSY
773@code{specialfile} is already mounted. Or, it cannot be remounted
774read-only, because it still holds files open for writing. Or, it
775cannot be mounted on @code{dir} because @code{dir} is still busy
776(it is the working directory of some task, the mount point of another
777device, has open files, etc.).
778
779@item EINVAL
780@code{specialfile} had an invalid superblock. Or, a remount was
781attempted, while @code{specialfile} was not already mounted on @code{dir}.
782Or, an umount was attempted, while @code{dir} was not a mount point.
783
784@item EFAULT
785One of the pointer arguments points outside the user address space.
786
787@item ENOMEM
788The kernel could not allocate a free page to copy filenames or data into.
789
790@item ENAMETOOLONG
791A pathname was longer than MAXPATHLEN.
792
793@item ENOTDIR
794A pathname was empty or had a nonexistent component.
795
796@item EACCES
797A component of a path was not searchable. Or, mounting a read-only
798filesystem was attempted without giving the MS_RDONLY flag. Or, the
799block device @code{specialfile} is located on a filesystem mounted with
800the MS_NODEV option.
801
802@item ENXIO
803The major number of the block device @code{specialfile} is out of
804range.
805
806@item EMFILE
807(In case no block device is required:) Table of dummy devices is full.
808
809@end table
810
811@subheading DESCRIPTION:
812
813@code{Mount} attaches the filesystem specified by @code{specialfile}
814(which is often a device name) to the directory specified by @code{dir}.
815
816Only the super-user may mount filesystems.
817
818The @code{filesystemtype} argument may take one of the values listed in
819/proc/filesystems (link "minix", "ext2", "msdos", "proc", "nfs",
820"iso9660" etc.).
821
822The @code{rwflag} argument has the magic number 0xCOED in the top 16 bits,
823and various mount flags in the low order 16 bits. If the magic number is
824absent, then the last two arguments are not used.
825
826The @code{data} argument is interpreted by the different file systems.
827
828@subheading NOTES:
829
830NONE
831
832@c
833@c
834@c
835@page
836@subsection umount - Umount file systems
837
838@findex umount
839@cindex  umount file systems
840
841@subheading CALLING SEQUENCE:
842
843@ifset is-C
844@example
845#include <sys/mount.h>
846#include <linux/fs.h>
847
848int umount(
849  const char *specialfile
850);
851@end example
852@end ifset
853
854@ifset is-Ada
855@end ifset
856
857@subheading STATUS CODES:
858
859@table @b
860@item EPERM
861The user is not the super-user.
862
863@item ENODEV
864@code{Filesystemtype} not configured in the kernel.
865
866@item ENOTBLK
867@code{Specialfile} is not a block device (if a device was required).
868
869@item EBUSY
870@code{Specialfile} is already mounted. Or, it cannot be remounted
871read-only, because it still holds files open for writing. Or, it
872cannot be mounted on @code{dir} because @code{dir} is still busy
873(it is the working directory of some task, the mount point of another
874device, has open files, etc.).
875
876@item EINVAL
877@code{specialfile} had an invalid superblock. Or, a remount was
878attempted, while @code{specialfile} was not already mounted on @code{dir}.
879Or, an umount was attempted, while @code{dir} was not a mount point.
880
881@item EFAULT
882One of the pointer arguments points outside the user address space.
883
884@item ENOMEM
885The kernel could not allocate a free page to copy filenames or data into.
886
887@item ENAMETOOLONG
888A pathname was longer than MAXPATHLEN.
889
890@item ENOTDIR
891A pathname was empty or had a nonexistent component.
892
893@item EACCES
894A component of a path was not searchable. Or, mounting a read-only
895filesystem was attempted without giving the MS_RDONLY flag. Or, the
896block device @code{specialfile} is located on a filesystem mounted with
897the MS_NODEV option.
898
899@item ENXIO
900The major number of the block device @code{specialfile} is out of
901range.
902
903@item EMFILE
904(In case no block device is required:) Table of dummy devices is full.
905
906@end table
907
908@subheading DESCRIPTION:
909
910@code{Umount} removes the attachment of the filesystem specified
911by @code{specialfile} or @code{dir}.
912
913Only the super-user may umount filesystems.
914
915@subheading NOTES:
916
917NONE
918
919@c
920@c
921@c
922@page
923@subsection aio_read - Asynchronous Read
924
925@findex aio_read
926@cindex  asynchronous read
927
928@subheading CALLING SEQUENCE:
929
930@ifset is-C
931@example
932int aio_read(
933);
934@end example
935@end ifset
936
937@ifset is-Ada
938@end ifset
939
940@subheading STATUS CODES:
941
942@table @b
943@item E
944The
945
946@end table
947
948@subheading DESCRIPTION:
949
950@subheading NOTES:
951
952This routine is not currently supported by RTEMS but could be
953in a future version.
954
955@c
956@c
957@c
958@page
959@subsection aio_write - Asynchronous Write
960
961@findex aio_write
962@cindex  asynchronous write
963
964@subheading CALLING SEQUENCE:
965
966@ifset is-C
967@example
968int aio_write(
969);
970@end example
971@end ifset
972
973@ifset is-Ada
974@end ifset
975
976@subheading STATUS CODES:
977
978@table @b
979@item E
980The
981
982@end table
983
984@subheading DESCRIPTION:
985
986@subheading NOTES:
987
988This routine is not currently supported by RTEMS but could be
989in a future version.
990
991@c
992@c
993@c
994@page
995@subsection lio_listio - List Directed I/O
996
997@findex lio_listio
998@cindex  list directed i/o
999
1000@subheading CALLING SEQUENCE:
1001
1002@ifset is-C
1003@example
1004int lio_listio(
1005);
1006@end example
1007@end ifset
1008
1009@ifset is-Ada
1010@end ifset
1011
1012@subheading STATUS CODES:
1013
1014@table @b
1015@item E
1016The
1017
1018@end table
1019
1020@subheading DESCRIPTION:
1021
1022@subheading NOTES:
1023
1024This routine is not currently supported by RTEMS but could be
1025in a future version.
1026
1027@c
1028@c
1029@c
1030@page
1031@subsection aio_error - Retrieve Error Status of Asynchronous I/O Operation
1032
1033@findex aio_error
1034@cindex  retrieve error status of asynchronous i/o operation
1035
1036@subheading CALLING SEQUENCE:
1037
1038@ifset is-C
1039@example
1040int aio_error(
1041);
1042@end example
1043@end ifset
1044
1045@ifset is-Ada
1046@end ifset
1047
1048@subheading STATUS CODES:
1049
1050@table @b
1051@item E
1052The
1053
1054@end table
1055
1056@subheading DESCRIPTION:
1057
1058@subheading NOTES:
1059
1060This routine is not currently supported by RTEMS but could be
1061in a future version.
1062
1063@c
1064@c
1065@c
1066@page
1067@subsection aio_return - Retrieve Return Status Asynchronous I/O Operation
1068
1069@findex aio_return
1070@cindex  retrieve return status asynchronous i/o operation
1071
1072@subheading CALLING SEQUENCE:
1073
1074@ifset is-C
1075@example
1076int aio_return(
1077);
1078@end example
1079@end ifset
1080
1081@ifset is-Ada
1082@end ifset
1083
1084@subheading STATUS CODES:
1085
1086@table @b
1087@item E
1088The
1089
1090@end table
1091
1092@subheading DESCRIPTION:
1093
1094@subheading NOTES:
1095
1096This routine is not currently supported by RTEMS but could be
1097in a future version.
1098
1099@c
1100@c
1101@c
1102@page
1103@subsection aio_cancel - Cancel Asynchronous I/O Request
1104
1105@findex aio_cancel
1106@cindex  cancel asynchronous i/o request
1107
1108@subheading CALLING SEQUENCE:
1109
1110@ifset is-C
1111@example
1112int aio_cancel(
1113);
1114@end example
1115@end ifset
1116
1117@ifset is-Ada
1118@end ifset
1119
1120@subheading STATUS CODES:
1121
1122@table @b
1123@item E
1124The
1125
1126@end table
1127
1128@subheading DESCRIPTION:
1129
1130@subheading NOTES:
1131
1132This routine is not currently supported by RTEMS but could be
1133in a future version.
1134
1135@c
1136@c
1137@c
1138@page
1139@subsection aio_suspend - Wait for Asynchronous I/O Request
1140
1141@findex aio_suspend
1142@cindex  wait for asynchronous i/o request
1143
1144@subheading CALLING SEQUENCE:
1145
1146@ifset is-C
1147@example
1148int aio_suspend(
1149);
1150@end example
1151@end ifset
1152
1153@ifset is-Ada
1154@end ifset
1155
1156@subheading STATUS CODES:
1157
1158@table @b
1159@item E
1160The
1161
1162@end table
1163
1164@subheading DESCRIPTION:
1165
1166@subheading NOTES:
1167
1168This routine is not currently supported by RTEMS but could be
1169in a future version.
1170
1171@c
1172@c
1173@c
1174@page
1175@subsection aio_fsync - Asynchronous File Synchronization
1176
1177@findex aio_fsync
1178@cindex  asynchronous file synchronization
1179
1180@subheading CALLING SEQUENCE:
1181
1182@ifset is-C
1183@example
1184int aio_fsync(
1185);
1186@end example
1187@end ifset
1188
1189@ifset is-Ada
1190@end ifset
1191
1192@subheading STATUS CODES:
1193
1194@table @b
1195@item E
1196The
1197
1198@end table
1199
1200@subheading DESCRIPTION:
1201
1202@subheading NOTES:
1203
1204This routine is not currently supported by RTEMS but could be
1205in a future version.
Note: See TracBrowser for help on using the repository browser.