共享内存段密钥突然更改

Sudden change of shared memory segment key

本文关键字:突然 密钥 内存 段密钥 共享      更新时间:2023-10-16

我在Linux上有一个C++应用程序。应用程序使用在没有IPC_PRIVATE的情况下创建的共享内存。我可以使用ipcs命令查看共享内存段ID和密钥。其他进程也可以访问这些分段

不幸的是,有时密钥变为0,而没有其他进程密钥访问这样的段。我在这里的相关问题中看到,值为0意味着段是私有的。从另一方面来说,我看不出如何做到这一点。更不用说我没有明确这么做了

我的问题是:

  • 我如何调查这个问题
  • 如何从流程中查看分段状态(私有/共享)
  • 我可以从流程中将分段状态更改回共享状态吗

问题的原因是外部脚本错误地删除了共享内存段。两个字:时间问题。