1、在说Cgroupfs与Systemd之间的区别之前,我们需要先了解一下什么是Cgroup?
Cgroup,全称Control Group(控制组),是Linux系统内核提供的一个特性(Linux 2.6.24内核开始将Cgroup加入主线),主要用于限制和隔离一组进程对系统资源的使用,也就是做资源QoS。可控制的资源主要包括CPU、内存、block I/O、网络带宽等等。
2、什么是Cgroupfs?
Cgroup提供了一个原生接口并通过cgroupfs提供(从这句话我们可以知道cgroupfs就是Cgroup的一个接口的封装)。类似于procfs和sysfs,是一种虚拟文件系统。并且cgroupfs是可以挂载的,默认情况下挂载在/sys/fs/cgroup目录。
如下图所示,我们可以看到对应的总资源管理及细节的资源管理:
可以看到这里有很多控制文件,其中以cpuset开头的控制文件都是cpuset子系统产生的,其他文件则由Cgroup产生。tasks文件记录了这个Cgroup的所有进程(包括线程),在系统启