summaryrefslogtreecommitdiffstats
path: root/man7/ipc_namespaces.7
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--man7/ipc_namespaces.766
1 files changed, 66 insertions, 0 deletions
diff --git a/man7/ipc_namespaces.7 b/man7/ipc_namespaces.7
new file mode 100644
index 0000000..0b13f07
--- /dev/null
+++ b/man7/ipc_namespaces.7
@@ -0,0 +1,66 @@
+.\" Copyright (c) 2019 by Michael Kerrisk <mtk.manpages@gmail.com>
+.\"
+.\" SPDX-License-Identifier: Linux-man-pages-copyleft
+.\"
+.\"
+.TH ipc_namespaces 7 2023-02-05 "Linux man-pages 6.05.01"
+.SH NAME
+ipc_namespaces \- overview of Linux IPC namespaces
+.SH DESCRIPTION
+IPC namespaces isolate certain IPC resources,
+namely, System V IPC objects (see
+.BR sysvipc (7))
+and (since Linux 2.6.30)
+.\" commit 7eafd7c74c3f2e67c27621b987b28397110d643f
+.\" https://lwn.net/Articles/312232/
+POSIX message queues (see
+.BR mq_overview (7)).
+The common characteristic of these IPC mechanisms is that IPC
+objects are identified by mechanisms other than filesystem
+pathnames.
+.PP
+Each IPC namespace has its own set of System V IPC identifiers and
+its own POSIX message queue filesystem.
+Objects created in an IPC namespace are visible to all other processes
+that are members of that namespace,
+but are not visible to processes in other IPC namespaces.
+.PP
+The following
+.I /proc
+interfaces are distinct in each IPC namespace:
+.IP \[bu] 3
+The POSIX message queue interfaces in
+.IR /proc/sys/fs/mqueue .
+.IP \[bu]
+The System V IPC interfaces in
+.IR /proc/sys/kernel ,
+namely:
+.IR msgmax ,
+.IR msgmnb ,
+.IR msgmni ,
+.IR sem ,
+.IR shmall ,
+.IR shmmax ,
+.IR shmmni ,
+and
+.IR shm_rmid_forced .
+.IP \[bu]
+The System V IPC interfaces in
+.IR /proc/sysvipc .
+.PP
+When an IPC namespace is destroyed
+(i.e., when the last process that is a member of the namespace terminates),
+all IPC objects in the namespace are automatically destroyed.
+.PP
+Use of IPC namespaces requires a kernel that is configured with the
+.B CONFIG_IPC_NS
+option.
+.SH SEE ALSO
+.BR nsenter (1),
+.BR unshare (1),
+.BR clone (2),
+.BR setns (2),
+.BR unshare (2),
+.BR mq_overview (7),
+.BR namespaces (7),
+.BR sysvipc (7)