madvise(2) — System Calls
NAME
madvise − Advise the system of the expected paging behavior of a process
SYNOPSIS
#include <sys/types.h> #include <sys/mman.h> int madvise (
caddr_t addr,
size_t len,
int behav );
PARAMETERS
addrSpecifies the address of the region to which the advice refers.
lenSpecifies the length in bytes of the region specified by the addr parameter.
behavSpecifies the behavior of the region. The following values for the behav parameter are defined in the sys/mman.h header file:
MADV_NORMAL
No further special treatment
MADV_RANDOM
Expect random page references
MADV_SEQUENTIAL
Expect sequential references
MADV_WILLNEED
Will need these pages
MADV_DONTNEED
Do not need these pages
The system will free any whole pages within the specified region. All modifications will be lost and any swapped out pages will be discarded. Subsequent access to the region will result in a zero-fill-on-demand fault as though it is being accessed for the first time. Reserved swap space is not affected by this call.
MADV_SPACEAVAIL
Ensure that resources are reserved
DESCRIPTION
The madvise() function permits a process to advise the system about its expected future behavior in referencing a mapped file or shared memory region.
NOTES
Only a few values of the behav parameter values are operational on Tru64 UNIX systems. Non-operational values cause the system to always return success (zero).
RETURN VALUES
Upon successful completion, the madvise() function returns zero. Otherwise, -1 is returned and errno is set to indicate the error.
ERRORS
If the madvise() function fails, errno may be set to one of the following values:
[EINVAL]The behav parameter is invalid.
[ENOSPC]The behav parameter specifies MADV_SPACEAVAIL and resources cannot be reserved.
RELATED INFORMATION
Functions: mmap(2)