Como alterar a prioridade do processo no Linux com nice e renice

O Linux permite que você execute muitos processos em uma máquina sem perder o ritmo. Às vezes, um processo intensivo pode tornar o sistema lento. Não seria ótimo se houvesse uma maneira de, de alguma forma, colocá-lo em banho-maria quando você continuar com outras tarefas? Você pode, com um utilitário chamado nice.

Jogando bem com os processos

Nice é um utilitário integrado aos sistemas Linux e Unix que pode reduzir a prioridade da CPU de um processo. Este utilitário é um artefato da época em que o Unix rodava em minicomputadores e mainframes multiusuário, mas ainda é útil atualmente em desktops de usuário único.

Você pode estar jogando e experimentando lag devido a algum processo intensivo que você sabe que demorará muito para obter a saída, como um cliente de torrent . Basta reatribuí-lo para o segundo plano e continuar jogando.

Nice é um programa autônomo ou integrado ao shell. Para descobrir qual é o caso em seu sistema, digite:

 which nice

No Ubuntu, a versão do nice instalada é a versão GNU .

Nice usa o conceito de "número agradável", que é a prioridade de qualquer processo. Na versão GNU, varia de 19 a -20. Os números negativos dão mais prioridade ao processo, enquanto os números positivos dão menos. Você pode ver este bom número como a coluna NI em utilitários como top ou htop .

Para executar um processo com prioridade mais baixa, use este comando:

 nice processname

Substitua processname pelo processo que você deseja executar. Por padrão, nice atribuirá o bom número de 10. Quaisquer processos iniciados normalmente serão padronizados para 0.

Se você quiser um número específico, neste caso, a prioridade mínima absoluta, use a opção -n com o número adequado que você deseja:

 nice -n 19 processname

Mudando a Prioridade do Processo com Renice

Agora você pode iniciar comandos com uma prioridade reduzida, mas que tal alterar a prioridade dos processos em execução? Você também pode fazer isso com outro utilitário, o renice.

Você precisará do PID, ou ID do processo, do processo que deseja alterar. Você pode descobrir isso usando o comando ps , top ou htop. Depois de encontrar isso, você só precisa alimentar o comando renice.

Para definir um novo número legal para o seu PID, digite:

 renice priority PID

… onde a prioridade é o número adequado que você deseja usar.

O sinalizador -n altera a prioridade do processo pelo incremento que você mencionou, positivo ou negativo, portanto, se você tinha um processo que estava em 10 e queria alterá-lo para 8, digite:

 sudo renice -n -2 PID

Apenas o superusuário pode reniciar processos que pertencem a outro usuário ou aumentar a prioridade de um processo. Você pode usar a opção -u seguida do nome de usuário para ajustar a prioridade de qualquer usuário:

 renice priority -u username

Relacionado: O que é um processo no Linux?

Agora você pode alterar as prioridades do processo para obter o melhor desempenho

Com nice e renice, você pode alterar a prioridade de qualquer processo no Linux. Isso certamente o ajudará em momentos em que um processo pesado está consumindo uma grande parte dos recursos do seu sistema. Além disso, otimizar o desempenho do sistema com ferramentas de monitoramento como o Stacer pode ser útil.