Saltar al contenido

PID máximo en Linux

Solución:

Es 32768 por defecto, puede leer el valor en su sistema en /proc/sys/kernel/pid_max.

Y puede establecer el valor más alto en sistemas de 64 bits (hasta 222 = 4.194.304) con:

echo 4194304 > /proc/sys/kernel/pid_max

Leer más aquí:

http://www.cs.wisc.edu/condor/condorg/linux_scalability.html (a través de archive.org)

El valor máximo del PID en Linux es configurable. Puedes acceder a él a través /proc/sys/kernel/pid_max expediente. Este archivo (nuevo en Linux 2.5) especifica el valor en el que se envuelven los PID (es decir, el valor en este archivo es uno mayor que el PID máximo). El valor predeterminado para este archivo, 32768, da como resultado el mismo rango de PID que en los núcleos anteriores. El valor de este archivo se puede establecer en cualquier valor hasta 2 ^ 22 (PID_MAX_LIMIT, aproximadamente 4 millones).

Desde la perspectiva de la programación, debes usar pid_t escriba para trabajar con el ID de proceso. Incluso puede acceder a sus valores mínimo / máximo utilizando rasgos enteros. Aquí hay un ejemplo de cómo hacerlo usando C ++ y Boost en Linux 2.6.X ejecutándose en la plataforma x86_64:

$ cat test.cpp 
#include <sys/types.h>
#include <iostream>
#include <boost/integer_traits.hpp>

using namespace std;

int main ()
{
    cout << "pid_t max = " << boost::integer_traits<pid_t>::const_max << endl;
}

$ ./test 
pid_t max = 2147483647

Desde el proc(5) página man:

/proc/sys/kernel/pid_max (desde Linux 2.5.34)

Este archivo especifica el valor en el que se envuelven los PID (es decir, el valor en este archivo es uno mayor que el PID máximo). Los PID mayores que este valor no se asignan; por lo tanto, el valor de este archivo también actúa como un límite de todo el sistema en el número total de procesos y subprocesos. El valor predeterminado para este archivo, 32768, da como resultado el mismo rango de PID que en los núcleos anteriores. En plataformas de 32 bits, 32768 es el valor máximo de pid_max. En sistemas de 64 bits, pid_max se puede configurar en cualquier valor hasta 2 ^ 22 (PID_MAX_LIMIT, aproximadamente 4 millones).

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *