MeiK/关于 mmap 映射的内存的释放问题

Created Thu, 16 Aug 2018 20:28:25 +0000 Modified Wed, 23 Oct 2019 09:42:22 +0800
125 Words

关于 mmap 映射的内存的释放问题。

#include <sys/mman.h>
void *mmap(void *addr, size_t len, int prot, int flag, int fd, off_t off);
// 若执行成功, 则返回映射区的起始地址;若出错,则返回 `MAP_FAILED` 

其参数含义与可选选项可以参照这里

mmap 映射的空间应该使用 munmap 释放, 而非 free ,使用 munmap 后其空间将被自动释放。而如果使用 free 释放的话,将会导致程序卡死。