Linux PID Recycling [geschlossen]


74

Gibt es unter Linux Richtlinien zum Recycling gebrauchter PIDs? Ich meine, wenn ein PId verwendet wurde, wie viel später wird es wieder verwendet?


1
Ich bin auch neugierig und habe mich nur gefragt, wie das
Nachschlagen

2
Mir scheint, dass PIDs nur verwendet werden sollten, um aktuell laufende Prozesse zu identifizieren. Wenn Sie diese Richtlinie befolgen, wird die genaue Art und Weise, wie PIDs recycelt werden, Sie niemals beeinflussen. Der Versuch, sich darauf zu verlassen, wie PIDs recycelt werden, ist fragil. Allein aus diesem Grund sollten Sie es nicht tun. Außerdem kann ich mir nicht vorstellen, wie nützlich ein solches Verhalten sein könnte. Das einzige, was Sie vielleicht wissen möchten, ist, wie groß PIDs sein können. Eine Folge davon ist beispielsweise, wie viele Prozesse Ihr System unterstützt. Beachten Sie, dass keine Kenntnisse darüber erforderlich sind, wie Recycling funktioniert, um zu dieser Erkenntnis zu gelangen.
Allyourcode

6
@allyourcode Versuchen Sie, ein Programm wie topzu schreiben, ohne sich Gedanken darüber zu machen, wie PIDs recycelt werden.
notbad.jpeg

Um Ihnen ein Beispiel aus dem wirklichen Leben zu geben, wie oft sich die PID wiederholen kann, sehe ich sie etwa alle 2 Stunden auf häufig verwendeten Ubuntu-Hosts, manchmal sogar noch häufiger.
Phoebe

Antworten:


58

Wenn neue Prozesse eingeführt werden, steigen die PIDs auf ein systemabhängiges Limit und werden dann umbrochen. Der Kernel wird eine PID nicht wiederverwenden, bevor dieser Wrap-Around erfolgt.

Die Grenze (maximale Anzahl von Pids) ist /proc/sys/kernel/pid_max. Das Handbuch sagt:

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

Diese Datei gibt den Wert an, bei dem PIDs umbrochen werden (dh der Wert in dieser Datei ist um eins größer als die maximale PID). Der Standardwert für diese Datei 32768führt zu demselben PID-Bereich wie bei früheren Kerneln


OK. Diese zunehmende Politik wird also strikt befolgt? Oder kann es eine PID wiederverwenden, bevor das Limit erreicht wurde?
Cygnus

1
Ich dachte, eine PID wäre vor dem Wickeln wiederverwendet worden, aber nachdem ps -A -L -o lwp |sort -nich Pids gefunden hatte, waren noch 32372 in Gebrauch; Ich vermute also, dass es sich auf meinem System sehr schnell dreht! auch wenn nicht zu oft, aber zumindest beim booten.
Wassermann Power

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.