一般PID_MAX=0x8000(可改),因此進(jìn)程號(hào)的最大值為0x7fff,即32767。
進(jìn)程號(hào)0-299保留給daemon進(jìn)程。
現(xiàn)在的內(nèi)核好像沒(méi)有這個(gè)限制了,《linux內(nèi)核設(shè)計(jì)與實(shí)現(xiàn)》上說(shuō)為了與老版本的unix和linux兼容,pid的最大值默認(rèn)是32767(short int的最大值),如果你需要的話還可以不考慮和老版本兼容,修改/proc/sys/kernel/pid_max來(lái)提高上限用echo重新寫(xiě)入一個(gè)數(shù)值到這個(gè)文件即可。
由于一般機(jī)器不可能同時(shí)跑那么多進(jìn)程+線程,所以32768是肯定夠用了,但是系統(tǒng)傾向于分配未使用過(guò)的pid給新進(jìn)程,所以你會(huì)發(fā)現(xiàn)在正在運(yùn)行的系統(tǒng)上,有很多低位的pid沒(méi)有使用,那是因?yàn)閱?dòng)的時(shí)候該pid被其它程序用過(guò)了,當(dāng)然,你真有本事用到pid的最大值,系統(tǒng)也有辦法解決,那就是從頭(低位)搜索未被占用的pid分配給新進(jìn)程。
總結(jié)
以上所述是小編給大家介紹的linux系統(tǒng)下pid的取值范圍,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!