remove a mapping
system call deletes the mappings for the specified address range, and causes
further references to addresses within the range to generate invalid memory
Upon successful completion, the value 0 is returned; otherwise the value -1 is returned and the global variable errno is set to indicate the error.
munmap() will fail if:
- The addr and len parameters specify a region that would extend beyond the end of the address space, or some part of the region being unmapped is not part of the currently valid address space.
- The addr and len parameters specify a region which contains at least one page marked immutable.
madvise(2), mlock(2), mlockall(2), mmap(2), mprotect(2), msync(2), getpagesize(3)
When len is non-zero, the
munmap() function conforms to IEEE
Std 1003.1-2008 (“POSIX.1”).
munmap() system call has been
available since 4.3BSD-Net/2.
IEEE Std 1003.1-2008
(“POSIX.1”) specifies that
munmap() shall fail with
EINVAL if len is 0.
OpenBSD performs no action in this case.