MINCORE(2)

NAME
mincore - determine residency of memory pages

SYNOPSIS
int mincore(addr, len, vec)
caddr_t addr; int len; result char *vec;

DESCRIPTION

mincore() returns the primary memory residency status of pages in the address space covered by mappings in the range [addr, addr + len). The status is returned as a char-per-page in the character array referenced by *vec (which the system assumes to be large enough to encompass all the pages in the address range). The least significant bit of each character is set to 1 to indicate that the referenced page is in primary memory, 0 if it is not. The settings of other bits in each character is undefined and may contain other information in the future.

RETURN VALUES

mincore() returns:

0   on success.

-1  on failure and sets errno to indicate the error.

ERRORS

mincore() will fail if:

EFAULT
    A part of the buffer pointer to by vec is out-of-range or otherwise inaccessible.

EINVAL
    addr is not a multiple of the page size as returned by getpagesize(2).

ENOMEM
    Addresses in the range [addr, addr + len) are invalid for the address space of a process, or specify one or more pages which are not mapped.

SEE ALSO
mmap(2)