Qual è la gamma di un PID su Linux e Solaris?


12

Qual è il valore massimo e minimo per un PID (Process ID) su Linux e Solaris?

Risposte:


13

Da http://www.alexxoid.com/blog/linux/getting-the-max-pid-value-for-linux-process.html :

Per ottenere il valore PID massimo che può essere assegnato al processo Linux, eseguire il comando seguente:

cat /proc/sys/kernel/pid_max

Sulla maggior parte delle macchine Linux, il risultato è 32768 (= 2 15 ).

Tuttavia, se necessario, può essere impostato su qualsiasi valore fino a 4194304 (= 2 22 ). I server potrebbero avere un limite maggiore per evitare collisioni PID, ad esempio.


15

Hai avuto e accettato una risposta Linux. Su Solaris, il valore massimo di un ID processo è un parametro sintonizzabile del kernel - pidmaxin /etc/system- che per impostazione predefinita è 30.000 e che può essere impostato tra 266 e 999.999. Si noti che non lo è max_nprocs, che è un parametro sintonizzabile del kernel con una funzione leggermente diversa.


Hai detto che max_nprocsè diverso, qual è la differenza?
Sfogliando il

1
@ffledgling max_nprocslimita il numero di processi simultanei, indipendentemente dal fatto che siano disponibili pid non utilizzati.
jlliagre,

2

Il minimo è 1 e di solito il massimo è 2 ^ 15


... tranne su Solaris, come nella domanda, dove non lo è.
JdeBP,

Il PID minimo è in realtà 0, ovvero il kernel che non è un processo in realtà ...
jlliagre

il kernel ottiene un PID?
Giovanni Tirloni,

Non ne ha bisogno, ma viene dato il pid 0. In Linux, immagino che sia mostrato solo come PPID ma sotto Solaris, c'è sicuramente una voce / proc / 0 e il processo di report ps 0 come "sched".
jlliagre,

@jlliagre ubuntu non ha nessuno dei /proc/0due ps -p 0funzionanti :), comunque, come inizializzatore pid variabile, il migliore sembra essere-1
Aquarius Power
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.