测试kernel.pid_max值

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了测试kernel.pid_max值相关的知识,希望对你有一定的参考价值。

# sysctl kernel.pid_max  
kernel.pid_max = 32768  
# sysctl -w kernel.pid_max=500  
kernel.pid_max = 500  

 

#include <unistd.h>  
#include <stdio.h>   
int main ()   
{   
    pid_t fpid; //fpid表示fork函数返回的值  
    int count=0;
    while(1) { 
        fpid=fork();   
        if (fpid < 0) {   
            printf("error in fork!\n");
            break;
        }
        else if (fpid == 0) {
            count++;
        } else {
        sleep(100);
        return 0;
        }
    }
    printf("count is %d\n", count);
    return 0;
}

 

# gcc test.c; ./a.out   
error in fork!  
count is 172  

 

以上是关于测试kernel.pid_max值的主要内容,如果未能解决你的问题,请参考以下文章

-bash: fork: Cannot allocate memory

linux 系统编程 进程

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

Linux系统的限制

模板测试

linux 最多支持多少个线程