Von man renice
:
Andere Benutzer als der Superuser dürfen nur die Priorität ihrer eigenen Prozesse ändern und ihren "netten Wert" (aus Sicherheitsgründen) nur monoton im Bereich von 0 bis PRIO_MAX (20) erhöhen. [...]
So kann ich renice
meine eigenen Prozesse aufwärts (mit niedrigerer Priorität) aber niemals abwärts steuern:
$ renice 10 22316
22316 (process ID) old priority 0, new priority 10
$ renice 9 22316
renice: failed to set priority for 22316 (process ID): Permission denied
Warum ist das? Ich kann verstehen, warum normale Benutzer keine netten Werte unter 0 einstellen können, aber warum kann ich die Priorität nicht erneut auf 9 erhöhen, da ich sie auf 10 verringern kann? Welchen "Sicherheitsgrund" gibt es dafür? Ich habe das Recht, einen Prozess mit einem netten Wert von 9 zu starten. Warum kann ich ihn dann nicht auf 9 ändern?
EDIT: Ich sollte lernen, nach unten zu scrollen. Es stellte sich heraus, dass dies als Fehler in aufgeführt ist man renice
:
BUGS
Non super-users can not increase scheduling priorities of their own
processes, even if they were the ones that decreased the priorities
in the first place.
Das ist noch verwirrender. Wenn sie dieses Verhalten als Fehler betrachten, warum nicht ändern? Der renice
Befehl ist in 4.0BSD erschienen, was meiner Meinung nach aus dem Jahr 1980 stammt. Dies sollte sehr einfach zu beheben sein, so dass sie einerseits beschlossen haben, ihn zu verlassen, und andererseits ihn als Fehler auflisten.