Lidando com processos

Publicado por Juliao Junior em 30/05/2008

[ Hits: 7.671 ]

 


Lidando com processos



Um conceito não muito conhecido pelos iniciantes no mundo Linux são os "processos". Saber lidar eficientemente com processos simplifica e agiliza em muito diversas tarefas.

Primeiro, o que é um "processo"? O kernel Linux considera cada programa rodando no sistema como um processo. Ele existe enquanto está sendo executado. Portanto, seu período de existência pode ser muito curto ou muito longo, dependendo de cada caso. A expressão "killed" (morto) é usado para processos que foram terminados.

Cada processo é identificado pelo kernel com uma "identificação de processo" (um process id, ou pid).

Podemos citar várias propriedades de um processo. Por exemplo seu "uid" (id do usuário), seu "gid" (id do grupo), além de suas permissões. Certamente, cada processo possui seu diretório de trabalho (working directory).

Como podemos monitorar os processos em nossa máquina? Uma alternativa é usar o comando "ps". Ele fornece uma fotografia do que está acontecendo na máquina, os processos em execução. Por padrão apenas os vinculados ao próprio terminal e ao próprio usuário. Porém, podemos usar algumas opções e alterar bastante seu comportamento. Veja:
  • ps a --> mostra os processos de outros usuários;
  • ps x --> inclui processos que não estão controlados pelo terminal.

Uma alternativa é o comando "top". Ele assume todo o terminal (tipo fullscreen) e mostra a atividade dos processos em uma atualização contínua (lembrando a expressão "em tempo real"). A saída do comando "top" mostra os processos em ordem descendente do uso do processador pelos processos.

Mas como lidar com esse conceito pode ser útil para nós? Primeiro, lembre que nem todas as tarefas executadas pela máquina precisam da mesma quantidade de tempo para sua execução. Assim, em Linux, temos um outro conceito que chamados de "prioridade", onde tarefas mais importantes possuem maior prioridade, e assim tomam mais tempo da máquina. Você pode ver isso agora em sua máquina por usar o comando abaixo, e olhar a coluna "PRI":

$ ps -l

Dessa forma você pode alterar as prioridades dos processos. Use o comando "nice". Com ele indicamos um número, que corresponde à prioridade do processo. Por padrão seus processos são automaticamente iniciados com prioridade 10. Quanto maior esse número, menor a prioridade. Assim, um processo com prioridade máxima teria "nice -20". Por exemplo, um comando importante poderia ser usado da seguinte forma:

$ nice -n -15 comando-muito-importante

Outras dicas deste autor

Distribuição Super Gamer

Lidando com compactação de arquivos

Flags no Gentoo Linux para pacotes específicos

Recuperando downloads de ISOs "quebradas" ou parciais

Transferência de Arquivos - Fish ou SCP

Leitura recomendada

Comandos do smbclient

O comando chage

Limpando a cache DNS (Red Hat / Suse / CentOS)

Identificar o sistema operacional usando ping

Resolvendo o erro: Sub-processo gzip retornou um código de erro (1)

  

Comentários
[1] Comentário enviado por iamunhoz em 30/05/2008 - 21:18h

Muito bom! Ficou bem instrutivo, mas ficou faltando uma pequena conclusão :D

[2] Comentário enviado por eng_ividal em 02/06/2008 - 22:21h

blz a dica... so nao entendi:
quanto maior esse número, menor a prioridade...Assim, um processo com prioridade máxima teria "nice -20"



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts