[1] A Linux system begins with a single namespace of each type, used by all processes.
Adequate containers support functionality was finished in kernel version 3.8[4][5] with the introduction of User namespaces.
Which resource is isolated depends on the kind of namespace that has been created for a given process group.
IPC namespaces isolate processes from SysV style inter-process communication.
UTS (UNIX Time-Sharing) namespaces allow a single system to appear to have different host and domain names to different processes.
A similar table is used for group ID mappings and ownership checks.
[11] The cgroup namespace type hides the identity of the control group of which the process is a member.
[14] The syslog namespace was proposed by Rui Xiang, an engineer at Huawei, but wasn't merged into the Linux kernel.
[15] systemd implemented a similar feature called “journal namespace” in February 2020.
[16] The kernel assigns each process a symbolic link per namespace kind in /proc/
This uniquely identifies each namespace by the inode number pointed to by one of its symlinks.
Other applications, such as Google Chrome make use of namespaces to isolate its own processes which are at risk from attack on the internet.