Jaki jest zasięg PID w systemach Linux i Solaris?


12

Jaka jest maksymalna i minimalna wartość PID (ID procesu) w systemach Linux i Solaris?

Odpowiedzi:


13

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

Aby uzyskać maksymalną wartość PID, którą można przypisać procesowi Linux, uruchom następującą komendę:

cat /proc/sys/kernel/pid_max

Na większości komputerów z systemem Linux wynik to 32768 (= 2 15 ).

Jednakże, może być ustawiona na dowolną wartość, aż do 4194304 (= 2, 22 ), jeżeli jest to konieczne. Na przykład serwery mogą mieć większy limit, aby uniknąć kolizji PID.


15

Masz i zaakceptowałeś odpowiedź Linuksa. Solaris, wartość maksymalna z ID procesu jest parametrem przestrajanie jądra - pidmaxw /etc/system- że domyślnie 30000, które można ustawić w dowolnym miejscu pomiędzy 266 a 999.999. Zauważ, że nie max_nprocsjest to parametr dostrajany przez jądro z subtelnie inną funkcją.


Wspomniałeś, że max_nprocsjest inaczej, jaka jest różnica?
— sfledgling

1
@ffledgling max_nprocsogranicza liczbę jednoczesnych procesów, niezależnie od tego, czy nieużywane pidy są dostępne, czy nie.
— jlliagre

2

Minimum to 1, a zwykle maksimum to 2 ^ 15


... z wyjątkiem Solaris, jak w pytaniu, gdzie go nie ma.
— JdeBP

Minimalny PID to w rzeczywistości 0, tzn. Jądro, które tak naprawdę nie jest procesem ...
— jlliagre

czy jądro otrzymuje PID?
— Giovanni Tirloni,

Nie potrzebuje go, ale otrzymuje pid 0. Pod Linuksem wydaje mi się, że jest pokazany tylko jako PPID, ale w Solarisie zdecydowanie jest wpis / proc / 0, a raporty ps przetwarzają 0 jako „harmonogram”.
— jlliagre

@jlliagre ubuntu nie ma żadnego z nich /proc/0nie ps -p 0działa :), zresztą jako zmienny inicjator pid najlepiej wydaje się być-1
— Aquarius Power
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.