linux的pid用完了怎末办?

linux的pid用完了怎末办?,第1张

你可能同时跑32768个进程么?这个值是可以改的,在/proc/sys/kernel/pid_max,用echo重新写入一个数值到这个文件即可。

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

一般PID_MAX=0x8000(可改),因此进程号的最大值为0x7fff,即32767。进程号0-299保留给daemon进程。这里的last_pid 记录了上一次分配的pid,next_safe(注意它是一个static的变量)记录了当前可以安全分配的最大pid+1的值。

有兴趣可以看这篇文章

http://hi.baidu.com/zhuxiaoyin/blog/item/87df1bae6d7da7fdfaed5033.html


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/8369598.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-15
下一篇2023-04-15

发表评论

登录后才能评论

评论列表(0条)

    保存