linux 进程数最大值修改方法
实际的系统进程数上限收到3个配置项的影响:
1、threads-max(/proc/sys/kernel/threads_max)
这个值表示物理内存决定的系统进程数上限,fork_init中有:
max_threads=mempages/(THREAD_SIZE/PAGE_SIZE)/8
2、pid_max(/proc/sys/kernel/pid_max)
这个值表示进程ID的上限。为了兼容旧版,默认为32768(即两个字节)。
echo 4194303> /proc/sys /kernel/pid_max
3、RLIMIT_NPROC(ulimit-u或者getrlimit)
这个值表示单个用户允许的最大进程数上限。系统默认为threads-max的一半:
init_task.rlim[RLIMIT_NPROC].rlim_cur=max_threads/2; init_task.rlim[RLIMIT_NPROC].rlim_max=max_threads/2;
实验:
某环境上:
threads-max=139264;
pid_max=32768
RLIMIT_NPROC=69632
1、此时,使用根用户不断创建进程,最终创建了约32378,考虑到原有的进程数,比较接近pid_max这个值;
2、改pid_max为18000时,最终创建了17612个进程;
3、修改pid_max为80000,换成普通用户,最终创建了67913个进程
总结
以上所述是小编给大家介绍的linux进程数最大值修改方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!