De man renice
:
Usuários que não sejam o superusuário podem alterar apenas a prioridade dos processos que possuem, e podem aumentar monotonicamente seu `` bom valor '' (por razões de segurança) dentro do intervalo de 0 a PRIO_MAX (20) [...]
Portanto, eu posso renice
meus próprios processos para cima (dar a eles menor prioridade), mas nunca para baixo:
$ 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
Por que é isso? Entendo por que usuários normais não podem definir valores agradáveis menores que 0, mas por que, como posso diminuir a prioridade para 10, não posso aumentá-la novamente para 9? Que "motivo de segurança" existe para isso? Tenho o direito de iniciar um processo com um valor agradável de 9, por que não posso renomeá-lo para 9?
Edição: eu deveria aprender a rolar para baixo. Acontece que isso está listado como um bug em 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.
Isso é ainda mais confuso. Se eles consideram esse comportamento um erro, por que não alterá-lo? O renice
comando apareceu no 4.0BSD, que eu acho que é de 1980. Isso deve ser muito fácil de corrigir, por um lado eles parecem ter optado por deixá-lo e, por outro, o listam como um bug.