当我运行时ipcs -m
,我可以看到系统上共享内存段的列表,比如
------ Shared Memory Segments --------
key shmid owner perms bytes nattch status
0x00000000 0 user1 664 342110 0
0x00000000 32769 user1 664 28391740 5
0x00000000 65538 user1 664 1929302 4
如何更改共享内存段的所有者?
没有工具可以做到这一点。只有
ipcrm
(用于删除提供的共享内存对象)、ipcmk
(用于创建共享内存对象)和ipcs
(用于显示现有的共享内存对象)存在(我的意思是util-linux项目)。内核不
/proc
为 Sys V 共享内存对象而不是 POSIX 共享内存 (/dev/shm/<object>
) 提供接口。您可以使用shmctl(2)系统调用编写自己的工具。许多关于 Unix IPC 的教程和书籍都有大量关于
shmctl
.