项目简介
本项目基于Linux系统和Go语言构建了控制组管理程序。通过cgroup实现资源的限制与隔离,能够有效管理不同进程的资源使用。利用Go语言编写程序,实现了对cgroup的创建与自动化管理。
项目的主要特性和功能
- 支持便捷创建新的cgroup,并进行管理和配置。
- 可借助cgroup对进程的CPU、内存、I/O等资源进行限制和隔离。
- 能够模拟创建新的容器环境,实现用户空间、PID空间和挂载命名空间的隔离。
- 可启动内存压力测试的子进程,并对其进行内存限制。
安装使用步骤
- 确保系统已安装Go语言环境,若未安装需先进行安装。
- 下载项目源码文件并解压,得到项目文件夹。
- 进入项目的cmd文件夹,运行
go build
命令编译程序,会生成可执行文件(如main或day2)。 - 运行编译所得的可执行文件,首次运行可能需以root权限执行,因为创建和管理cgroup需要特定权限。
- 程序会创建新的容器环境,并在其中运行内存压力测试的子进程,该子进程的内存限制为100MB。
- 可通过查看系统的cgroup文件夹(如
/sys/fs/cgroup
)来查看和管理创建的cgroup。
注意:因项目部分功能需特定系统环境和权限,请在熟悉Linux系统和cgroup的前提下使用,遇到问题可查阅相关文档资料解决。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】