O LINUX controla suas aplicações através de serviços e processos que estão “rodando” no sistema operacional.

Os serviços são aplicações desenvolvidas para realizar determinadas tarefas no sistema. Por exemplo, quando instalado um sistema LINUX como sendo um Servidor de DNS, teremos um serviço que desempenhará o papel de DNS neste sistema. Além deste, teremos o serviço de rede, responsável pelas conexões deste servidor com as

redes e a Internet, e assim por diante.

Um processo nada mais é do que uma identificação de um serviço ou tarefa que está em execução. Os processos são criados automaticamente pelo sistema operacional quando um serviço ou uma tarefa é iniciado e, é através deles, que o sistema consegue ter controle total sobre os serviços e tarefas que estão em execução.

O LINUX possui um ótimo controle de serviços e processos em execução. Através deste controle, é possível especificar prioridades de execução, finalizar processos ociosos, finalizar processos travados, e redefinir prioridades de processos em execução. Essas são tarefas diárias de um administrador de sistemas LINUX.

 

Gerenciamento de Processos

Existe um conjunto de comandos utilizados para realizar o gerenciamento de processos em sistemas LINUX. São eles.

ps : comando utilizado para visualizar processos ativos no sistema.

Parâmetros do ps:

-a Mostrar todos os processos ativos

-f Mostrar em formato de árvore

-u Incluir usuário do processo e hora de início

-x Incluir processos não associados a um terminal

 

Pstree : comando usado para visualizar a árvore de processos.

Parâmetros do pstree:

-p Mostra também o PID de cada processo.

-a Mostra a linha de comando completa de cada processo.

-h Mostra em destaque o processo atual, útil para ver suas origens.

-H Mostra em destaque o processo especificado pelo PID

 

kill : comando utilizado para encerrar um processo ativo.

Parâmetros do kill:

-l Exibir os sinais que podem ser enviados a um processo.

 

nice – comando utilizado para ajustar a prioridade que será executado um novo processo.

Parâmetros no nice:

+n ou –n Definir a prioridade do processo em n (-20 prioridade máxima de execução e 19 prioridade mínima de execução).

 

renice – comando utilizado para ajustar a prioridade de um processo em execução.

Parâmetros no renice:

+n ou –n Definir a prioridade do processo em n (-20 prioridade máxima de execução e 19 prioridade mínima de execução).

 

IMPORTANTE: Somente o usuário root pode definir prioridades negativas (prioridades máximas) para um processo em sistemas LINUX.

Os usuários comuns só podem definir prioridades positivas, ou seja, prioridades que não podem comprometer o sistema.

 

IMPORTANTE: Os processos estão sempre ajustados para as melhores prioridades. Não convém alterar esses valores, ao menos que você saiba muito bem o que faz.

 

top : comando utilizado para mostrar informações de processos, memória RAM, memória virtual, usuários online, entre outros.

Parâmetros do top:

-d n Atualizar a tela de n em n segundos

-i Não inclui na listagem processos ociosos ou zombies.

-u Monitora apenas os processos do usuário informado.

-p Monitora apenas os processos informados pelo PID.

 

Principais comandos do Top

P =  Ordena os processos pelo consumo de CPU (padrão).

M=  Ordena os processos pelo consumo de memória.

F= Tela de escolha de qual campo fazer a ordenação.

R= Inverte a ordenação.

<ENTER>= Força a atualização da listagem.

d= Altera o intervalo entre atualizações, em segundos (o padrão é 3).

u= Monitora apenas os processos do usuários informado.
r= Altera a prioridade de um processo.

k= Finaliza o processo (kill).

q= Sai do programa.

 

free : comando utilizado para visualizar informações de memória do sistema.

 

Exemplificando

Mostrar todos os processos
#ps aux

Mostrar somente os processos referentes ao named.
#ps aux | grep named

Listar todos os sinais que podem ser enviados ao processo.
#kill –l

Matar um processo baseado no seu PID.
#kill –9 PID

Mostrar informações de processos, memória RAM, memória virtual, entre outros, atualizando a tela de um em um segundo.
#top –d1

Mostrar informações de memória do sistema.
#free