1<sys/uio.h>(0P)            POSIX Programmer's Manual           <sys/uio.h>(0P)
2
3
4

NAME

6       sys/uio.h - definitions for vector I/O operations
7

SYNOPSIS

9       #include <sys/uio.h>
10

DESCRIPTION

12       The  <sys/uio.h>  header shall define the iovec structure that includes
13       at least the following members:
14
15
16              void   *iov_base  Base address of a memory region for input or output.
17              size_t  iov_len   The size of the memory pointed to by iov_base.
18
19       The <sys/uio.h> header uses the iovec structure for scatter/gather I/O.
20
21       The  ssize_t  and  size_t  types  shall  be  defined  as  described  in
22       <sys/types.h>.
23
24       The following shall be declared as functions and may also be defined as
25       macros. Function prototypes shall be provided.
26
27
28              ssize_t readv(int, const struct iovec *, int);
29              ssize_t writev(int, const struct iovec *, int);
30
31       The following sections are informative.
32

APPLICATION USAGE

34       The implementation can put a limit on the number of scatter/gather ele‐
35       ments  which can be processed in one call. The symbol {IOV_MAX} defined
36       in <limits.h> should always be used to learn about the  limits  instead
37       of assuming a fixed value.
38

RATIONALE

40       Traditionally, the maximum number of scatter/gather elements the system
41       can process in one call were described by the symbolic value  {UIO_MAX‐
42       IOV}.  In  IEEE Std 1003.1-2001  this value is replaced by the constant
43       {IOV_MAX} which can be found in <limits.h>.
44

FUTURE DIRECTIONS

46       None.
47

SEE ALSO

49       <limits.h>,   <sys/types.h>,   the   System   Interfaces   volume    of
50       IEEE Std 1003.1-2001, read(), write()
51
53       Portions  of  this text are reprinted and reproduced in electronic form
54       from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology
55       --  Portable  Operating  System  Interface (POSIX), The Open Group Base
56       Specifications Issue 6, Copyright (C) 2001-2003  by  the  Institute  of
57       Electrical  and  Electronics  Engineers, Inc and The Open Group. In the
58       event of any discrepancy between this version and the original IEEE and
59       The  Open Group Standard, the original IEEE and The Open Group Standard
60       is the referee document. The original Standard can be  obtained  online
61       at http://www.opengroup.org/unix/online.html .
62
63
64
65IEEE/The Open Group                  2003                      <sys/uio.h>(0P)
Impressum