cgroup 外部进程是否可以访问 cgroup 隔离资源

Are cgroup isolated resources accessible for the process outside cgroup

我通过 cgroups 为一些进程分配了一组 CPU。不属于任何 cgroup 的进程是否可以访问这些 CPU?可能是一个愚蠢的问题,但我无法 google 回答。

启用 cgroup 后,所有进程都属于某个 cgroup。如果您没有明确设置它,这些进程将属于根 cgroup。您可以通过

查看

# cat /proc/pid/cgroups

CPU 不会在 cgroup 中单独分配。当你为一个 cgroup 设置一些 cpus - 比如在 4 cpu 机器上的 cpu 0 & 1,那个 cgroup 中的进程将只能访问 cpu 0 & 1 . 每个其他 cgroup 和进程都可以访问所有 cpus (0-3).

cpu 掩码也是分等级的。如果子 cgroup 正在使用 cpu,则不能从父 cgroup 中删除 cpu。希望对您有所帮助。