标签:调用 进程间通信 ram null 权限 sans munmap 原型 top
作用:创建内存映射区,将磁盘上的文件数据映射到内存,用户通过内存就能修改磁盘文件。
优点:效率高
缺点:不阻塞,麻烦(对效率不是很高的要求建议用管道)
函数原型:
#include <sys/mman.h>
void *mmap(void *addr, size_t length, int prot, int flags, int fd, off_t offset);
int munmap(void *addr, size_t length);
mmap参数说明:
返回值:成功返回文件内存映射区的首地址,失败返回MAP_FAILED == (void *)(-1)
munmap参数说明:
返回值:成功返回0, 失败返回-1
进程间通信:
有血缘关系的进程间通信:父子进程共享内存映射区(可创建匿名内存映射区)
无血缘关系的进程间通信:不能通过匿名内存映射方式通信,只能借助磁盘文件通信
mmap是不阻塞的。
如果创建匿名内存映射区:
常见问题:
标签:调用 进程间通信 ram null 权限 sans munmap 原型 top
原文地址:https://www.cnblogs.com/SingleJourney/p/9027138.html