NAME [Toc] [Back]
munmap - unmap pages of memory
SYNOPSIS [Toc] [Back]
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
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
[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
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 ]