É possível modificar a prioridade de execução dos processos no Linux, através dos comandos nice e renice. Estes comandos são extremamente úteis em ambientes multiusuário
Imagine um servidor com muitos usuários logados e cada um executando algo. Neste tipo de ambiente, é preciso dar mais ou menos fatias de processamento aos diversos programas dos usuários, para manter um ambiente estável e organizado.
Comando nice
O comando nice ajusta o tempo disponível de CPU de um processo para mais ou para menos prioridade, a sintaxe é:
$ nice [-n ajuste_de_prioridade] [comando]
No inglês a palavra “nice” quer dizer “legal”. Se o ajuste de prioridade para um processo for um número positivo, quer dizer que ele está sendo mais legal com os outros programas diminuindo a sua prioridade. Se o ajuste for um número negativo, quer dizer que o programa está sendo menos legal, aumentando a sua prioridade de execução e sobrando menos tempo de CPU para os outros programas.
O ajuste de prioridade possível vai do –20 (mais prioridade / menos legal) até o 19 (mais legal, menos prioridade).
Se não for passado nenhum valor de ajuste, o comando nice ajustará a prioridade para +10, diminuindo o tempo de execução do processo, exemplo:
$ nice updatedb &
Neste exemplo o comando updatedb tem menos prioridade de execução.
No próximo exemplo o comando folha_pagamento será executado com mais prioridade.
$ nice –n –10 folha_pagamento
Comando renice
O comando renice ajusta a prioridade de execução de processos que já estão rodando. Por padrão, o comando renice recebe como parâmetro o PID de um determinado processo, a sintaxe é:
$ renice [+/-] ajuste_prioridade [opções] PID/Usuário
O ajuste de prioridade é um número inteiro que vai do –20 (maior prioridade) até o +20 (executar qualquer coisa antes deste processo).
As opções mais usuais são:
- -p: Recebe um PID para alterar sua prioridade.
- -u: Recebe um nome de usuário para alterar a prioridade de todos os processos deste usuário em execução.
- -g: Recebe um nome de um grupo para alterar a prioridade de todos os processos pertencentes a este grupo.
Exemplo:
# renice -1 987 -u daemon root -p 32
Neste exemplo, o processo de número PID 987, PID 32 e todos os processos de que os usuários daemon e root são donos vão ter mais prioridade.
Gostou? Se tiverem algumas sugestões, dica ou se ficou com alguma dúvida sobre este tutorial, não tem problema! Basta comentar no post que iremos responder suas dúvidas assim que for possível.
fonte: certificacaolinux