单独调用mmap与MAP_SHARED使用相同的共享内存区域?

时间:2017-02-22 22:13:47

标签: linux posix

我正在尝试理解MAP_SHARED影响mmap的方式。

手册说:

  

MAP_SHARED 分享此映射。映射的更新对于映射相同区域的其他进程是可见的,并且(在文件支持的映射的情况下)被传递到底层文件。 (要精确控制何时对基础文件进行更新,需要使用msync(2)。)

我不清楚是否通过底层对象(文件)将更改从一个进程传递到另一个进程,如果是这样,则需要msync ()来确保其他进程可以看到更改。

或者,这些文件是否映射到共享内存中,该文件在文件的同一区域上被mmap ()的其他调用重用?

如果是这样,所有更改将立即可供其他进程使用。

0 个答案:

没有答案