Muitos usuários Linux conhecem o comando nice
, mas poucos realmente sabem como usá-lo. Nice
é um dos comandos que soa bem mas que você nunca lembra uma razão para usá-lo. Apesar disso, ele pode ser incrivelmente útil. Nice
pode alterar a prioridade de execução de um processo, dando-o um maior ou menor percentual do processador. Normalmente ele é manuseado pelo agendador de tarefas do Linux. O agendador garantirá que processos com uma maior prioridade (como aqueles que envolvem entradas do usuário) terão seu compartilhamento dos recursos. Isto assegura que mesmo quando seu sistema está usando 100% da CPU você continua apto a movimentar as janelas e clicar com o mouse.
No entando, o agendador nem sempre trabalha sem problemas; certas tarefas podem sobrecarregar seu computador. Este pode ser um desobediente comando find
que foi disparado por um script de limpeza da distribuição; ou a codificação de um grupo de arquivos de vídeo que levam seu computador a uma parada.
Comumente você caçaria estes processos com um comando top
antes de matá-los. Nice
apresenta uma alterativa mais sutil e útil. Ele reduz a prioridade das tarefas afetadas de maneira que o seu sistema continue funcional enquanto continua a executar os processos afetados. Executar um comando com uma prioridade diferente é tão simples quanto:
nice --10 updatedb
Este comando executa o updatedb
com prioridade reduzia a -10. Se você executar um top
, verá o valor nice abaixo da column identificada como 'NI'.
Caso queira reduzir a prioridade de um programa em execução, utilize o comando renice
com o ID do processo:
renice -10 -p 1708217082: old priority 0, new priority -10
Este comando também reduz a prioridade do processo em 10 e, dependendo do valor nice
dos outros processos, diminuirá o total de tempo de CPU que será compartilhado com outras tarefas.