¿Cómo determina Linux el próximo PID que utilizará para un proceso? El propósito de esta pregunta es comprender mejor el kernel de Linux. No tengas miedo de publicar el código fuente del kernel. Si los PID se asignan de forma secuencial, ¿cómo llena Linux los huecos? ¿Qué pasa cuando llega al final?¿Cómo determina Linux el próximo PID?
Por ejemplo, si ejecuto un script PHP desde Apache que hace un <?php print(getmypid());?>
, se imprimirá el mismo PID durante unos minutos mientras pulso actualizar. Este período de tiempo es una función de cuántas solicitudes está recibiendo apache. Incluso si solo hay un cliente, el PID eventualmente cambiará.
Cuando cambia el PID, será un número cercano, pero ¿qué tan cerca? El número no parece ser completamente secuencial. Si hago un ps aux | grep apache
consigo un buen número de procesos:
Linux ¿Cómo elegir el próximo número? Los pocos PID anteriores todavía se están ejecutando, así como también el PID más reciente que se imprimió. ¿Cómo elige apache reutilizar estos PID?
+1 eres un mal asno, así que te di algo más ... – rook
¿Hay alguna manera de que pueda mapear los PID globales y de espacio de nombres? –