华的专栏

讨论与进步

Linux CGROUP 数据结构

/*  * A cgroupfs_root represents the root of a cgroup hierarchy,  * and may be associated with a superblock to form an active  * hierarchy  */ s...

2016-10-01 11:07:34

阅读数:249

评论数:0

LINUX CGROUP 概述

在深入到cgroup的代码分析之前.先来了解一下cgroup中涉及到的几个概念: 1:cgroup:  它的全称为control group。即一组进程的行为控制,比如,我们限制进程/bin/sh的CPU使用为20%。我们就可以建一个cpu占用为20%的cgroup。然后将/bin/sh进程添...

2016-10-01 08:46:05

阅读数:414

评论数:0

Linux系统中cgroup功能介绍

 1  Cgroups简介 1.1 What are cgroups ? Cgroups(控制组)是Linux内核的一个功能,用来限制、统计和分离一个进程组的资源(CPU、内存、磁盘输入输出等)。换句话说就是,如果一个进程加入了某一个控制组,该控制组对Linux的系统资源都有严格的限制,...

2016-09-30 14:57:19

阅读数:7183

评论数:0

图解cgroup架构中cgroup与css之间的多对多的关系

这就是经典的cgroup与css之间的多对多关系,它们之间的联系依靠cg_group_link对象组织在一起,每一个css与cgroup的配对都会有一个cg_cgroup_link对象。

2016-02-03 09:26:33

阅读数:667

评论数:0

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

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

2016-02-03 09:21:11

阅读数:520

评论数:0

cgroup学习(七)——cpu子系统

CPU子系统         对于CPU子系统最常见的参数就是cpu.shares,我们来通过《cgroup学习(三)——伪文件》的表格来跟踪一下对该参数的读写操作。         通过systemtap我们可以看到读的bt:(cat cpu.shares) [html] ...

2016-02-03 09:20:26

阅读数:521

评论数:0

cgroup学习(六)——attach task

attach task         该过程对应于我们上面的实例操作的:echo 512 > tasks的过程,其实质就是先对cgroup下tasks文件进行写操作,建立该进程新的css_set与所有管理它的cgroup的关系;然后再根据各个子系统自己的attach函数进行attac...

2016-02-03 09:19:50

阅读数:380

评论数:0

cgroup学习(五)—— create new cgroup

create new cgroup         该过程就是mkdir/cgroup/cpu/test_cpu:在一个/cgroup/cpu hierarchy上创建一个cgroup,下面的bt是创建一个cpu hierarchy下的cgroup: [html] view...

2016-02-03 09:19:14

阅读数:274

评论数:0

cgroup学习(四)——mount hierarchy

mount hierarchy         该过程对应于mount -t cgroup -o cpu,cpuset cpuandset /cgroup          首先它解析mount参数-o ***:parse_cgroupfs_option,创建一个新的cgroupfs_ro...

2016-02-03 09:15:13

阅读数:387

评论数:0

cgroup学习(三)——伪文件

伪文件         cgroup是通过VFS与上层进行交互的,它定义了自己的cgroup文件系统,同时也定义了哪些文件,这些文件也是最终影响着cgroup行为,这一节我们介绍一下,每个子系统的伪文件定义在哪里?以及内核如何去操作这些伪文件。下面我们通过一张表来展示这些关系: ...

2016-02-03 09:14:37

阅读数:330

评论数:0

cgroup的学习(一)——what cgroup?

本序列文章将介绍cgroup概念,cgroup框架,cgroup的子系统   What Cgroup?       Control Groups provide a mechanism foraggregating/partitioning sets of tasks, and ...

2016-02-03 09:13:57

阅读数:403

评论数:0

cgroup学习(二)——cgroup框架结构

cgroup框架结构 这一章里,我们先整体介绍一个cgroup的框架结构,以及cgroup文件系统的相应文件定义。这里我们先看一下cgroup的主要结构关系:   图2 主要数据结构关系 该图包含了cgroup的所有主要数据结构及它们的关系。其中cgroupfs_roo...

2016-02-03 09:13:20

阅读数:432

评论数:0

Linux Cgroups详解(一)

Cgroups是什么? Cgroups是control groups的缩写,是Linux内核提供的一种可以限制、记录、隔离进程组(process groups)所使用的物理资源(如:cpu,memory,IO等等)的机制。最初由google的工程师提出,后来被整合进Linux内核。Cgroups...

2016-02-01 23:19:52

阅读数:797

评论数:0

Linux Cgroups详解(二)

cgroups 数据结构设计 我们从进程出发来剖析cgroups相关数据结构之间的关系。 在Linux中,管理进程的数据结构是task_struct,其中与cgroups有关的: #ifdef CONFIG_CGROUPS     /* Control Group info protect...

2016-02-01 23:19:09

阅读数:940

评论数:0

cgroup: Control Group 分析 转载

这篇文章分析Cgroup不错, 阅读Kernel代码的start_kernel函数到cgroup_init_early时,搜了下,找到了这篇文章,大致看了下,不错,收藏。     ------------------------------------------ 本文系本...

2016-02-01 09:36:36

阅读数:695

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭