cgroups Linux进程资源分离

程序名称:cgroups

授权协议: 未知

操作系统: Linux

开发语言: C/C++

cgroups 介绍

cgroups(控制组)是Linux内核的一个功能,用来限制报告和分离一个进程组的资源(cpu、内存、磁盘输入输出等)。这个工作是由Google的工程师(主要是Paul
Menage和Rohit Seth)在2006年以“process
containers(进程容器)”的名字开始的;在2007年的晚些时候被重命名为控制组(由于在内核中“容器”这个名词的歧义引起的混乱)并被合并到2.6.24版的内核中去。自那以后,又添加了很多功能和控制器。

cgroups的一个设计目标是为不同的应用情况提供统一的接口,从控制单一进程(像nice)到系统级虚拟化(像opeNVZ,Linux-
VServer,LXC)。cgroups提供:

  • 资源限制: 组可以被设置不超过设定的内存限制;这也包括虚拟内存。原来的分页机制是在Linux研讨会的 Containers: Challenges with the memory resource controller and its performance 报告中提出的。
  • 优先化: 一些组可能会得到大量的cpu或磁盘输入输出通量。
  • 报告: 用来衡量系统确实把多少资源用到适合的目的上。
  • 分离: 为组分离命名空间,这样一个组不会看到另一个组的进程、网络连接和文件
  • 控制: 冻结组或检查点和重启动。

cgroups 官网

#

热门编程语言

OpenFunix 是由我从零开始写的一个内核项目。 OpenFunix 是一个全新的操作系统内核。
女娲内核,用中文版C"习语言"写的简单操作系统内核,代码实现全中文书写..
Linux-Insides 是一系列 Linux 内核的展示。它通过分享 Linux 内核的内部知识来增加人们对 Linux 内核或者其他低级别主题的兴趣。
Alibaba Kernel起源于亚洲最大的电子商务网站——阿里巴巴。它基于 RHEL6 源代码,包含了阿里巴巴所需的一些更新和新功能。更多的信息和文档,请参阅http://kernel.taobao.org
Genode操作系統框架擴展現有的內核(如微內核或程序) ,並提供一個統一的API應用程序。目前, L4/Fiasco和Linux的支持。
TencentOS Kernel 是腾讯针对云的场景研发的服务器操作系统。 TencentOS Kernel(又名 Tencent Linux,简称 Tlinux)是腾讯针对云的场景研发的 Linux
Bickley是一个元数据管理API和框架,由三个主要部分组成: l Libkozo —— Kozo是围绕TDB库的数据库抽象。
Oracle Linux: Unbreakable Enterprise Kernel (UEK),顾名思义,是 Oracle Linux 企业发行版的内核源码。
Fiwix is an operating system kernel based on the Unix architecture and fully focused on being Linux compatible. It is designed exclusively for educational
cgroups(控制组)是Linux内核的一个功能,用来限制报告和分离一个进程组的资源(CPU、内存、磁盘输入输出等)。这个工作是由Google的工程师(主要是Paul
Win2-7 Pack 是一个用于将 GNOME 桌面变身成 Windows 7 的 all-in-one 转换包,其中包括 Windows 7
VWM 是一个可扩展的在控制台下实现的窗口管理器。