cgroup学习(八)——CPUSET子系统

本文详细介绍了Linux控制组(cgroup)中的CPUSET子系统,重点讲解了对`cpuset.cpus`的write和attach操作。write操作涉及参数解析、验证和进程的cpus_allowed更新,包括进程迁移。attach过程确保在线CPU并更新任务的cpu_allowed,以确定进程应运行的CPU。整个过程展示了cgroup如何管理和迁移任务的CPU分配。
摘要由CSDN通过智能技术生成

       对于CPUSET子系统我们主要解释对cpuset.cpus的操作。Read操作根据《cgroup学习(三)——伪文件》可以很容易的跟踪到代码,并解读,所以我们这里就不赘述,直接解释write及attach操作。首先我们看一下write操作的bt(使用systemtap见《使用systemtap获得内核函数的局部变量》):

sudo sh -c "echo 0-3 > cpuset.cpus"
13219 (sh) cpuset_change_cpumask call trace:
 0xffffffff810c2fc0 :cpuset_change_cpumask+0x0/0x20 [kernel]
 0xffffffff810bfc6b :cgroup_scan_tasks+0x17b/0x270 [kernel]
 0xffffffff810c4c2c :cpuset_write_resmask+0x17c/0x350 [kernel]
 0xffffffff810be14f :cgroup_file_write+0x16f/0x320 [kernel]
 0xffffffff81177e68 :vfs_write+0
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值