gpt4 book ai didi

linux - 不相关进程之间的 mmap 文件

转载 作者:太空宇宙 更新时间:2023-11-04 11:06:12 24 4
gpt4 key购买 nike

mmap() 如何在不相关的进程之间工作?

如果我在一个进程中对磁盘上的文件进行 mmap,那么稍后会出现一个进程并打开该文件并从 mmap 中受益吗?

我看到有一些方法可以在父进程和子进程之间共享,我指的是相互通信但不是父/子进程的进程。

谢谢

最佳答案

两个独立的进程可以使用 mmap(2) 共享对保存文件数据的内核磁盘 block 缓存的访问:

1) 进程 A 打开一个文件,使文件达到所需的大小并在文件中创建一个 mmap(2) 窗口。

2) 进程 B 打开同一个文件并在同一个文件中创建一个 mmap(2) 窗口。

3) 现在,相同的内核 block 缓存数据同时存在于两个进程中。任何一个进程都可以修改数据,并且该数据在另一个进程中即时可用。

这就是 MAP_SHARED 标志旨在提供的问题。

关于linux - 不相关进程之间的 mmap 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25170795/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com