cpulimit_fork(1)

cpulimit_fork1

限制指定进程cpu使用率的工具

Usage

cpulimit_fork PID PERCENT [OPTIONS]

Overview

cpulimit_fork 是一个用于限制指定进程CPU使用率的工具,通过发送SIGSTOP和SIGCONT信号来控制进程的运行状态,确保其CPU使用率不超过设定的阈值。

该工具通过以下方式工作: - 监控目标进程的CPU使用时间(从/proc文件系统读取jiffies数据) - 维护一个循环缓冲区存储进程的CPU使用快照 - 动态计算进程的CPU使用率并与限制阈值比较 - 根据比较结果发送信号控制进程运行或暂停 - 自动适应系统CPU核心数量调整限制范围

Arguments

PID

目标进程的进程ID,必须是一个有效的非负整数。工具会验证该进程是否存在,并检查是否有控制权限。

PERCENT

CPU使用率限制值(百分比),必须在1到系统CPU核心数×100之间。例如,在4核系统上,有效范围是1-400。

Options

--lazy

启用惰性模式(默认)。当目标进程不存在或已终止时,工具会立即退出。

--no-lazy

禁用惰性模式。当目标进程不存在或已终止时,工具会每2秒重试一次,直到进程出现。

-h, --help

显示帮助信息并退出。

-v, --version

显示版本信息并退出。

Examples

限制PID为1234的进程CPU使用率不超过50%:

cpulimit_fork 1234 50

在4核系统上限制PID为5678的进程CPU使用率不超过200%(相当于总CPU的50%):

cpulimit_fork 5678 200

禁用惰性模式,持续等待并限制PID为9012的进程,使用率不超过30%:

cpulimit_fork 9012 30 --no-lazy

Files

/proc/[PID]/stat

用于获取目标进程的CPU时间信息

/var/log/syslog

记录工具运行日志,包括进程ID和限制值

Notes

* 工具需要足够的权限才能向目标进程发送信号 * 不能用于限制自身进程(会提示错误并退出) * 退出时会自动发送SIGCONT信号恢复目标进程运行 * 限制精度依赖于系统时钟和调度机制

Author

Kylin操作系统开发团队

From kylin-process-manager 4.10.0.1-1 in Arch Linux 2026-11-07. Parsed by carta from the page's man source.