munmap(2) munmap(2)
NAME [Toc] [Back]
munmap - unmap pages of memory
SYNOPSIS [Toc] [Back]
#include <sys/mman.h>
int munmap(void *addr, size_t len);
DESCRIPTION [Toc] [Back]
The munmap() function removes the mappings for pages in the range
[addr, addr+len], rounding the len argument up to the next multiple of
the page size as returned by sysconf(). If addr is not the address of
a mapping established by a prior call to mmap(), the behavior is
undefined. After a successful call to munmap() and before any
subsequent mapping of the unmapped pages, further references to these
pages will result in the delivery of a SIGBUS or SIGSEGV signal to the
process.
If the specified address range was created by multiple calls to
mmap(), munmap() succeeds in unmapping all of the specified regions,
provided they form a contiguous address range.
If the region was created with the MAP_PRIVATE option, any
modifications made to the region are discarded.
RETURN VALUE [Toc] [Back]
Upon successful completion, munmap() returns 0. Otherwise, it returns
-1 and sets errno to indicate the error.
ERRORS [Toc] [Back]
The munmap() function will fails if:
[EINVAL] The addr argument is not a multiple of the page
size as returned by sysconf(_SC_PAGE_SIZE).
[EINVAL] Addresses in the range [addr, addr+len], are
outside the valid range for the address space of a
process.
[EINVAL] The address range specified by addr and len was
not created by a successful call to mmap().
[EINVAL] The len argument is 0.
AUTHOR [Toc] [Back]
munmap() was developed by HP, AT&T, and OSF.
SEE ALSO [Toc] [Back]
mmap(2), sysconf(2), <signal.h>, <sys/mman.h>.
Hewlett-Packard Company - 1 - HP-UX 11i Version 2: August 2003
munmap(2) munmap(2)
STANDARDS CONFORMANCE [Toc] [Back]
munmap(): AES, SVID3
CHANGE HISTORY [Toc] [Back]
First released in Issue 4, Version 2.
Hewlett-Packard Company - 2 - HP-UX 11i Version 2: August 2003 [ Back ] |