cgroups
body.skin-minerva .mw-parser-output table.infobox captiontext-align:center
原作者 | Paul Menage 與 Rohit Seth |
---|---|
開發者 | kernel.org (Tejun Heo與其他成員)以及freedesktop.org |
初始版本 | 2007年(2007) |
编程语言 | C語言 |
操作系统 | Linux |
类型 | 行程群組的資源管理功能 |
许可协议 | GPL 與 LGPL |
網站 | www.kernel.org/doc/Documentation/cgroup-v1/cgroups.txt 與 www.freedesktop.org/wiki/Software/systemd/ControlGroupInterface/ |
cgroups,其名稱源自控制群組(control groups)的簡寫,是Linux内核的一个功能,用来限制、控制與分離一个行程群組的资源(如CPU、内存、磁盘输入输出等)。
這個專案最早是由Google的工程師(主要是Paul Menage和Rohit Seth)在2006年發起,最早的名稱為行程容器(process containers)[1]。在2007年時,因為在Linux內核中,容器(container)這個名詞有許多不同的意義,為避免混亂,被重新命名為cgroup,並且被合併到2.6.24版的内核中去[2]。自那以后,又添加了很多功能。
目录
1 功能
2 参见
3 引用
4 外部連結
功能
cgroups的一个设计目标是为不同的应用情况提供统一的接口,从控制单一进程(像nice)到作業系統層虛擬化(像OpenVZ,Linux-VServer,LXC)。cgroups提供:
资源限制:组可以被设置不超过设定的内存限制;这也包括虚拟内存。[3][4]
优先级:一些组可能会得到大量的CPU[5] 或磁盘IO吞吐量。[6]
结算:用来衡量系统确实把多少资源用到适合的目的上。[7]
控制:冻结组或检查点和重启动。[7]
参见
Linux Containers (LXC)- systemd
引用
^ Jonathan Corbet. Process containers. LWN.net. 2007-05-29.
^ Jonathan Corbet. Notes from a container. LWN.net. 2007-10-29.
^ Jonathan Corbet. Controlling memory use in containers. LWN. 2007-07-31.
^ Balbir Singh, Vaidynathan Srinivasan. Containers: Challenges with the memory resource controller and its performance (PDF). Ottawa Linux Symposium. July 2007.
^ Jonathan Corbet. Kernel space: Fair user scheduling for Linux. Network World. 2007-10-23.
^ Kamkamezawa Hiroyu. Cgroup and Memory Resource Controller (PDF). Japan Linux Symposium. 2008-11-19. (原始内容 (PDF presentation slides)存档于2011-07-22).
^ 7.07.1 Dave Hansen. Resource Management (PDF presentation slides). Linux Foundation.
外部連結
- Linux kernel documentation on cgroups