MUNMAP(2) | System Calls Manual | MUNMAP(2) |
munmap
— remove a
mapping
#include
<sys/mman.h>
int
munmap
(void *addr,
size_t len);
The
munmap
()
system call deletes the mappings for the specified address range, causing
further references to addresses within the range to generate invalid memory
references.
How munmap
() handles a dirty page, depends
on what type of memory is being unmapped:
If there are still other references to the memory when the munmap is done, then nothing is done to the memory itself and it may be swapped out if need be. The memory will continue to persist until the last reference goes away (except for System V shared memory in which case, see above).
Upon successful completion, munmap
returns
zero. Otherwise, a value of -1 is returned and errno
is set to indicate the error.
munmap
() will fail if:
#include
<sys/types.h>
#include
<sys/mman.h>
The include file
<sys/types.h>
is
necessary.
int
munmap
(caddr_t
addr, size_t len);;
The type of addr has changed.
getpagesize(3), msync(2), munmap(2), mprotect(2), madvise(2), mincore(2), compat(5)
The munmap
() function first appeared in
4.4BSD.
October 16, 2008 | macOS 15.0 |