CGroup原理篇V11.2 CGroup的用法
Posted 高桐@BILL
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CGroup原理篇V11.2 CGroup的用法相关的知识,希望对你有一定的参考价值。
一、挂载cgroup文件系统
假设我们要使用名为“cpuset”的cgroup子系统,则需要执行下面的步骤:
1.1 挂载cgroup虚拟文件系统
mount -t tmpfs cgroup_root /sys/fs/cgroup
1.2 创建cpuset cgroup层级
mkdir /sys/fs/cgroup/cpuset
1.3 挂载cpuset子系统到cpuset层级目录
mount -t cgroup -ocpuset cpuset /sys/fs/cgroup/cpuset
1.4 通过使用mkdir命令创建新的控制组或使用系统调用(或echo命令)写操作/sys/fs/cgroup/cpuset目录下相关的参数文件
1.5 启动一个新任务作为“创始人”进程
1.6 通过执行写操作将pid写入到/sys/fs/cgroup/cpuset 下的tasks文件结点上来附加任务到控制组中
1.7 创始人进城通过fork、或exec或clone等命令创建任务
二、使用案例
举个例子,下面的命令集将会设置一个名为“Charile”的控制组,仅设置使用CPU2、CPU3和内存节点1,并在该控制组下启动一个sh作为创始人进程。
详细如下:
mount -t tmpfs cgroup_root /sys/fs/cgroup mkdir /sys/fs/cgroup/cpuset mount -t cgroup cpuset -ocpuset /sys/fs/cgroup/cpuset cd /sys/fs/cgroup/cpuset mkdir Charlie cd Charlie /bin/echo 2-3 > cpuset.cpus /bin/echo 1 > cpuset.mems /bin/echo $$ > tasks sh # Th
以上是关于CGroup原理篇V11.2 CGroup的用法的主要内容,如果未能解决你的问题,请参考以下文章
CGroup原理篇V11.3 CGroup Kernel API介绍