NAME
sys/uio.h - definitions for vector I/O operations
SYNOPSIS
#include <sys/uio.h>
DESCRIPTION
The <sys/uio.h> header shall define the iovec structure that includes at least the following members: void *iov_base Base address of a memory region for input or output. size_t iov_len The size of the memory pointed to by iov_base. The <sys/uio.h> header uses the iovec structure for scatter/gather I/O. The ssize_t and size_t types shall be defined as described in <sys/types.h>. The following shall be declared as functions and may also be defined as macros. Function prototypes shall be provided. ssize_t readv(int, const struct iovec *, int); ssize_t writev(int, const struct iovec *, int); The following sections are informative.
APPLICATION USAGE
The implementation can put a limit on the number of scatter/gather elements which can be processed in one call. The symbol {IOV_MAX} defined in <limits.h> should always be used to learn about the limits instead of assuming a fixed value.
RATIONALE
Traditionally, the maximum number of scatter/gather elements the system can process in one call were described by the symbolic value {UIO_MAXIOV}. In IEEE Std 1003.1-2001 this value is replaced by the constant {IOV_MAX} which can be found in <limits.h>.
FUTURE DIRECTIONS
None.
SEE ALSO
<limits.h> , <sys/types.h> , the System Interfaces volume of IEEE Std 1003.1-2001, .