pid cgroup

简介: pid cgroup 简介

1、为了避免系统资源被耗光,需要对进程的最大进程数进行限制,通过向对应进程所在 cgroup 的 pid.max 文件中写入具体的数字来限制其进程数。默认值为 'max' 也就是不限制,和 cgroup 最上层中的限制数保持一致。pids.current 表示 cgroup 该层路径下已经使用 pid 数量。如果 pid 已经达到上限,再创建进程会出现 Resource temporary unavailable 报错;

2、pid 被大量使用的原因:每一个进程都需要一个 pid,也会占用一定的资源,如果不限制进程数,可能会出现类似 fork bomb 耗光系统资源的问题。通常来说容器中可能由于 init 进程没有回收子进程而出现大量僵尸进程导致 pid 被耗光,当子进程退出时父进程没有回收子进程时,子进程就会成为僵尸进程;

3、系统 pid 最大值设置:pid 最大值可以在系统文件 /proc/sys/kernel/pid_max 中看到,系统在初始化时默认会设置最大值,一般小于等于 32 核的机器,pid_max 会被默认设置为 32768,大于32核的默认被设置为 核数*1024;

参考:
https://www.kernel.org/doc/Documentation/cgroup-v1/pids.txt

目录
相关文章
|
算法
初探PID—速度闭环控制
本文简单介绍了什么是PID,PID的作用,给出了PID实现程序。
164 0
|
5月前
|
机器学习/深度学习 算法
常用的PID有哪些?
常用的PID有哪些?
209 1
常用的PID有哪些?
|
6月前
|
存储 Linux 索引
/proc的相关知识
`/proc`是Linux的一个伪文件系统,存储内核运行状态和进程信息。它包含以PID命名的子目录,提供对系统硬件、进程详情的查看和内核状态的修改。`/proc/self`是特殊目录,让进程能直接访问其自身信息,无需知道PID。通过`/proc/self/cmdline`、`cwd`、`exe`、`environ`和`maps`等文件,可以获取进程的命令行、工作目录、可执行文件路径、环境变量和内存映射等信息。`maps`显示内存区域和权限,`mem`则提供进程内存映射,但部分区域不可读。
|
7月前
|
算法 Python
PID
PID算法是一种广泛应用于工业控制和自动控制领域的算法,它的全称是比例-积分-微分(Proportional-Integral-Derivative)算法。PID算法通过计算系统的偏差值(设定值与测量值之差)的比例、积分和微分值,然后对这三者进行加权求和,得到控制器的输出,从而实现对系统的控制。
89 3
|
Linux Android开发
查看/proc/[pid]/ 查看进程状态
查看/proc/[pid]/ 查看进程状态
125 0
|
存储 缓存 Linux
blkio cgroup
blkio 是 cgroup v1 中的一个子系统,使用 cgroup v1 blkio 子系统主要是为了减少进程之间共同读写同一块磁盘时相互干扰的问题。
571 1
cgroup
创建两个python进程,然后分别绑定在第0,1号CPU上.
cgroup
|
监控 Perl