Linux x86_64Memória#11
munmap
Remove um mapeamento de memória previamente criado com mmap.
Descrição
Libera a região de endereços virtuais; acessos subsequentes a ela geram SIGSEGV. Alterações em mapeamentos MAP_SHARED só são garantidamente persistidas em disco após um `msync` explícito ou no unmap.
Header:
sys/mman.hman 2Assinatura
int munmap(void * addr, size_t length);Parâmetros
| Parâmetro | Tipo | Descrição |
|---|---|---|
| addr | void * | Início da região a desmapear, alinhado ao tamanho de página. |
| length | size_t | Tamanho da região em bytes. |
Registradores (x86_64)
| Registrador | Papel | Argumento |
|---|---|---|
| rax | número da syscall (chamada) / valor de retorno (após SYSCALL) | — |
| rdi | argumento 1 | addrvoid * |
| rsi | argumento 2 | lengthsize_t |
Valor de retorno
0 em sucesso; -1 em erro, com errno definido.
Códigos de erro (errno)
- EINVAL(22)
- Argumento inválido.
Relacionadas
Equivalente em Windows Win32