Cgroup 理解

一、综述

      1、cgroup 可以控制进程组的资源(cpu,memory,i/o等)

      2、cgroup 采用树型结构来控制进程组的资源

      3、cgroup 利用资源子系统来分割资源

      4、cgroup 是lxc,docker等虚拟化技术的基石

二、cgroup基本概念

      1、task任务,就是系统中的一个进程

      2、control group 控制族群,一个进程组,cgroup控制资源的基本单位

      3、hierarchy层级,控制族群有层级,子层级自动继承父层级的特性

      4、subsystem子系统,资源控制器,它需要附着到一个层级上,一般是顶级层级

三、android上的cgroup

Cgroup 理解_第1张图片

      上图是android使用cgroup的情况,它利用cpu子系统来控制进程的cpu资源

      1、cpuctl是顶级层级,apps子层级,里面控制前后台进程的资源。

      2、tasks 存放的是被控制的进程tid,procs存放的是被控制的进程pid

      3、cpu.*存放的是cpu资源的参数

四、ubuntu上的cgroup

      ubuntu的cgroup默认挂载点在/sys/fs/cgroup,里面的子系统是最全的,读者有兴趣可以看看

你可能感兴趣的:(linux)