Warum können Unix-Benutzer nicht nach unten gehen?

2821
Jé Queue

Ich weiß, dass Benutzer ohne Rootberechtigung einen Prozess nach oben erneuern können, nicht aber eine Prozesspriorität nach unten .

$ nice yes >/dev/null & p=$! $ renice 15 -p $p  8414: old priority 10, new priority 15 $ renice 12 -p $p renice: 8414: setpriority: Permission denied $ kill $p 

Ich verstehe, dass ich als Nicht-Root-Benutzer nicht in der Lage sein sollte, einen Prozess in negatives Nizza-Gebiet (neu) einzugliedern, oder dass Root einen Prozess für mich auf einer höheren Ebene gestartet hat.

Die Frage ist, aus welchem ​​logischen Grund ein Benutzer ohne Rootberechtigung seine eigenen verarbeiteten Daten nicht nach unten abfragen kann, auch wenn er nicht weiter auf die ursprüngliche Priorität heruntergefahren ist, in der er eingerichtet wurde.

3

3 Antworten auf die Frage

6
John T

Wenn Root-Benutzer in der Lage sind, den Prozess eines anderen Benutzers neu zu priorisieren, weil er zu viele Ressourcen verwendet, sollte ein Benutzer dies nicht umgehen und ihn nicht zurücksetzen können.

Sollten wir nette Werte [-20, -1] nicht als Systemprioritäten im Vergleich zum 'Leerzeichen' des Benutzers [0,19] betrachten, verstehe ich, was Sie sagen, aber ich bin der Überzeugung, dass Benutzerprozesse in der Lage sein sollten sich oder ihre Kinder neu zu priorisieren ... zumindest von einer Basis-Priorität, die von root gesetzt wird? Jé Queue vor 14 Jahren 0
Ja, aber der Root-Benutzer wird möglicherweise feststellen, dass die Basispriorität zu hoch war und alle Prozesse eines bestimmten Benutzers ("renice -u user ...") neu priorisieren. Ich habe gesehen, wie der Sysadmin meiner Schule etwas Ähnliches wie unsere Prozesse tat, als er Batch-Jobs ausführte, damit er schneller fertig wurde. John T vor 14 Jahren 0
4
Craig Gidney

Denn dann hätten Programme einen Anreiz, sich auf Kosten des Gesamtsystems zu priorisieren.

Nicht unbedingt. Beispielsweise konnte der Benutzer Renice nicht unter 0 fallen. Jé Queue vor 14 Jahren 0
... was dem Prozess immer noch eine höhere Priorität einräumt als allen anderen Prozessen, die mit 20 ausgeführt werden. njd vor 14 Jahren 0
4
Egon

renice ändert die Programm-Nizzaheit - höhere Anzahl bedeutet niedrigere Priorität.

Ich denke, der Grund ist, dass man sich an die Anfangs-Nettes wahrscheinlich nicht erinnert - nur an den aktuellen Nieselwert. Es gibt also keine gute Möglichkeit festzustellen, ob ein Benutzer ein Programm mit höherer Priorität bearbeiten kann. (Dies ist eine Vermutung ... Vielleicht kann es jemand überprüfen?)