2
我试图创建用c的存储器映射命令C:MMAP失败:没有这样的设备
void* mem_map = mmap(NULL,
sizeof(serverData), //200000
PROT_READ | PROT_WRITE,
MAP_SHARED,
mem_map_fp,
0);
if(mem_map == MAP_FAILED){
bail_out(EXIT_FAILURE, "mmap");
}
程序编译,但试图运行下面的错误时产生:
mmap: No such device
根据我的理解,代码没有任何问题,这让我怀疑原因可能会更复杂一点。 我运行这个Linux版本:
Linux ubuntu 4.2.0-16-generiC#19-Ubuntu SMP Thu Oct 8 15:35:06 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
不,我们的目标是创建一个共享的内存被多个进程使用, – nitowa
我猜你只需要改变MAP_PRIVATE'''要在MAP_SHARED'我的例子呢。 – sputnik
这正是缺少的,做得好! – nitowa