欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

详解linux系统下pid的取值范围

程序员文章站 2022-04-05 08:00:38
一般pid_max=0x8000(可改),因此进程号的最大值为0x7fff,即32767。 进程号0-299保留给daemon进程。 现在的内核好像没有这个限制了,《l...

一般pid_max=0x8000(可改),因此进程号的最大值为0x7fff,即32767。

进程号0-299保留给daemon进程。

现在的内核好像没有这个限制了,《linux内核设计与实现》上说为了与老版本的unix和linux兼容,pid的最大值默认是32767(short int的最大值),如果你需要的话还可以不考虑和老版本兼容,修改/proc/sys/kernel/pid_max来提高上限用echo重新写入一个数值到这个文件即可。

 由于一般机器不可能同时跑那么多进程+线程,所以32768是肯定够用了,但是系统倾向于分配未使用过的pid给新进程,所以你会发现在正在运行的系统上,有很多低位的pid没有使用,那是因为启动的时候该pid被其它程序用过了,当然,你真有本事用到pid的最大值,系统也有办法解决,那就是从头(低位)搜索未被占用的pid分配给新进程。

总结

以上所述是小编给大家介绍的linux系统下pid的取值范围,希望对大家有所帮助