summaryrefslogtreecommitdiffstats
path: root/doc/posix1003.1/ch06.t
blob: 48222b7a73ac1a2fdc6eccee8897f5e9c4008ba4 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
@c
@c  COPYRIGHT (c) 1988-1998.
@c  On-Line Applications Research Corporation (OAR).
@c  All rights reserved.
@c
@c  $Id$
@c

@chapter Input and Output Primitives

@section Pipes

@subsection Create an Inter-Process Channel

@example
pipe(), Function, Unimplemented
@end example

@section File Descriptor Manipulation

@subsection Duplicate an Open File Descriptor

@example
dup(), Function, Unimplemented
dup2(), Function, Unimplemented
@end example

@section File Descriptor Deassignment

@subsection Close a File

@example
close(), Function, Partial Implementation
@end example

@section Input and Output

@subsection Read from a File

@example
read(), Function, Partial Implementation
@end example

@subsection Write to a File

@example
write(), Function, Partial Implementation
@end example

@section Control Operations on Files

@subsection Data Definitions for File Control Operations

@subsection File Control

@example
struct flock, Type, Unimplemented
fcntl(), Function, Unimplemented
F_DUPFD, Constant, 
F_GETFD, Constant, 
F_GETLK, Constant, 
F_SETFD, Constant, 
F_GETFL, Constant, 
F_SETFL, Constant, 
F_SETLK, Constant, 
F_SETLKW, Constant, 
FD_CLOEXEC, Constant, 
F_RDLCK, Constant, 
F_UNLCK, Constant, 
F_WRLCK, Constant, 
O_ACCMODE, Constant, 
@end example

NOTE: A number of constants are used by both @code{open} and @code{fcntl}.
@code{O_CREAT}, @code{O_EXCL}, @code{O_NOCTTY}, @code{O_TRUNC},
@code{O_APPEND}, @code{O_DSYNC}, @code{O_NONBLOCK}, @code{O_RSYNC},
@code{O_SYNC}, @code{O_RDONLY}, @code{O_RDWR}, and @code{O_WRONLY}
are also included in another section.  @xref{Open a File}.

@subsection Reposition Read/Write File Offset

@example
lseek(), Function, Partial Implementation
SEEK_SET, Constant, 
SEEK_CUR, Constant, 
SEEK_END, Constant, 
@end example

@section File Synchronization

@subsection Synchronize the State of a File

@example
fsync(), Function, Unimplemented
@end example

@subsection Synchronize the Data of a File

@example
fdatasync(), Function, Unimplemented
@end example

@section Asynchronous Input and Output

@subsection Data Definitions for Asynchronous Input and Output

@subsubsection Asynchronous I/O Control Block 

@example
struct aiocb, Type, Untested Implementation
@end example

@subsubsection Asynchronous I/O Manifest Constants

@example
AIO_CANCELED, Constant, 
AIO_NOTCANCELED, Constant, 
AIO_ALLDONE, Constant, 
LIO_WAIT, Constant, 
LIO_NOWAIT, Constant, 
LIO_READ, Constant, 
LIO_WRITE, Constant, 
LIO_NOP, Constant, 
@end example

@subsection Asynchronous Read

@example
aio_read(), Function, Dummy Implementation
@end example

@subsection Asynchronous Write

@example
aio_write(), Function, Dummy Implementation
@end example

@subsection List Directed I/O

@example
lio_listio(), Function, Dummy Implementation
@end example

@subsection Retrieve Error Status of Asynchronous I/O Operation

@example
aio_error(), Function, Dummy Implementation
@end example

@subsection Retrieve Return Status of Asynchronous I/O Operation

@example
aio_return(), Function, Dummy Implementation
@end example

@subsection Cancel Asynchronous I/O Request

@example
aio_cancel(), Function, Dummy Implementation
@end example

@subsection Wait for Asynchronous I/O Request

@example
aio_suspend(), Function, Dummy Implementation
@end example

@subsection Asynchronous File Synchronization

@example
aio_fsync(), Function, Dummy Implementation
@end example