Determines residency of memory pages.
Standard C Library (libc.a).
int mincore ( addr, len, * vec)
The mincore subroutine returns the primary-memory residency status for regions created from calls made to the mmap (mmap or mmap64 Subroutine) subroutine. The status is returned as a character for each memory page in the range specified by the addr and len parameters. The least significant bit of each character returned is set to 1 if the referenced page is in primary memory. Otherwise, the bit is set to 0. The settings of the other bits in each character are undefined.
|addr||Specifies the starting address of the memory pages whose residency is to be determined. Must be a multiple of the page size returned by the sysconf subroutine using the _SC_PAGE_SIZE value for the Name parameter.|
|len||Specifies the length, in bytes, of the memory region whose residency is to be determined. If the len value is not a multiple of the page size as returned by the sysconf subroutine using the _SC_PAGE_SIZE value for the Name parameter, the length of the region is rounded up to the next multiple of the page size.|
|vec||Specifies the character array where the residency status is returned. The system assumes that the character array specified by the vec parameter is large enough to encompass a returned character for each page specified.|
When successful, the mincore subroutine returns 0. Otherwise, it returns -1 and sets the errno global variable to indicate the error.
If the mincore
subroutine is unsuccessful, the errno global variable is set to one
of the following values:
|EFAULT||A part of the buffer pointed to by the vec parameter is out of range or otherwise inaccessible.|
|EINVAL||The addr parameter is not a multiple of the page size as returned by the sysconf subroutine using the _SC_PAGE_SIZE value for the Name parameter.|
|ENOMEM||Addresses in the (addr, addr + len) range are invalid for the address space of the process, or specify one or more pages that are not mapped.|
This subroutine is part of Base Operating System (BOS) Runtime.
The mmap (mmap or mmap64 Subroutine) subroutine, sysconf subroutine.
List of Memory Manipulation Services in AIX 5L Version 5.1 General Programming Concepts: Writing and Debugging Programs.