简单了解linux系统下pid的取值范围

Posted 03ngnntds

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了简单了解linux系统下pid的取值范围相关的知识,希望对你有一定的参考价值。

一般PID_MAX=0x8000(可改),因此进程号的最大值为0x7fff,即32767。
  进程号0-299保留给daemon进程。
  现在的内核好像没有这个限制了,《linux内核设计与实现》上说为了与老版本的unix和linux兼容,pid的最大值默认是32767(short int的最大值),如果你需要的话还可以不考虑和老版本兼容,修改/proc/sys/kernel/pid_max来提高上限用echo重新写入一个数值到这个文件即可。FTP
  由于一般机器不可能同时跑那么多进程+线程,所以32768是肯定够用了,但是系统倾向于分配未使用过的pid给新进程,所以你会发现在正在运行的系统上,有很多低位的pid没有使用,那是因为启动的时候该pid被其它程序用过了,当然,你真有本事用到pid的最大值,系统也有办法解决,那就是从头(低位)搜索未被占用的pid分配给新进程。




以上是关于简单了解linux系统下pid的取值范围的主要内容,如果未能解决你的问题,请参考以下文章

int 取值范围

C语言int的取值范围

C语言中,unsigned int型数据的取值范围是

mysql中bigintintmediumintsmallint与tinyint的取值范围

C语言各个数据类型取值范围

Math.random()的取值范围包括0和1吗?