# posix_fadvise

## PROLOG



           This manual page is part of the POSIX Programmer's Manual.  The
           Linux implementation of this interface may differ (consult the
           corresponding Linux manual page for details of Linux behavior), or
           the interface may not be implemented on Linux.
    


## NAME



           posix_fadvise — file advisory information (**ADVANCED REALTIME**)
    


## SYNOPSIS



           #include <fcntl.h>
    
           int posix_fadvise(int _fd_ , off_t _offset_ , off_t _len_ , int _advice_);
    


## DESCRIPTION



           The _posix_fadvise_() function shall advise the implementation on
           the expected behavior of the application with respect to the data
           in the file associated with the open file descriptor, _fd_ , starting
           at _offset_ and continuing for _len_ bytes. The specified range need
           not currently exist in the file. If _len_ is zero, all data
           following _offset_ is specified. The implementation may use this
           information to optimize handling of the specified data. The
           _posix_fadvise_() function shall have no effect on the semantics of
           other operations on the specified data, although it may affect the
           performance of other operations.
    
           The advice to be applied to the data is specified by the _advice_
           parameter and may be one of the following values:
    
           POSIX_FADV_NORMAL
                 Specifies that the application has no advice to give on its
                 behavior with respect to the specified data. It is the
                 default characteristic if no advice is given for an open
                 file.
    
           POSIX_FADV_SEQUENTIAL
                 Specifies that the application expects to access the
                 specified data sequentially from lower offsets to higher
                 offsets.
    
           POSIX_FADV_RANDOM
                 Specifies that the application expects to access the
                 specified data in a random order.
    
           POSIX_FADV_WILLNEED
                 Specifies that the application expects to access the
                 specified data in the near future.
    
           POSIX_FADV_DONTNEED
                 Specifies that the application expects that it will not
                 access the specified data in the near future.
    
           POSIX_FADV_NOREUSE
                 Specifies that the application expects to access the
                 specified data once and then not reuse it thereafter.
    
           These values are defined in _< fcntl.h>_.
    


## RETURN VALUE



           Upon successful completion, _posix_fadvise_() shall return zero;
           otherwise, an error number shall be returned to indicate the
           error.
    


## ERRORS



           The _posix_fadvise_() function shall fail if:
    
           **EBADF** The _fd_ argument is not a valid file descriptor.
    
           **EINVAL** The value of _advice_ is invalid, or the value of _len_ is less
                  than zero.
    
           **ESPIPE** The _fd_ argument is associated with a pipe or FIFO.
    
           _The following sections are informative._
    


## EXAMPLES



           None.
    


## APPLICATION USAGE



           The _posix_fadvise_() function is part of the Advisory Information
           option and need not be provided on all implementations.
    


## RATIONALE



           None.
    


## FUTURE DIRECTIONS



           None.
    


* * *