Analisando processos em seu GNU/Linux

Muitas vezes é necessário que tomemos conhecimento sobre quais processos estão rodando em nosso Linux, seja para analisarmos algum processo em particular, ou termos uma visão geral do funcionamento do sistema. Esta é uma das tarefas mais importantes para um administrador, pois é importantíssimo saber o que realmente está acontecendo em determinado momento com o sistema.

[ Hits: 77.298 ]

Por: Percival F. Jr. em 22/07/2008 | Blog: http://www.debianbrasil.890m.com


Voltando ao assunto...



Voltando ao tema principal do artigo, vamos depurar um pouco mais a análise dos processos:

$ ps -ef

UID        PID  PPID  C STIME TTY          TIME CMD
root         1     0  0 10:01 ?        00:00:00 init [2]
root         2     1  0 10:01 ?        00:00:00 [ksoftirqd/0]
root         3     1  0 10:01 ?        00:00:00 [events/0]
root         4     1  0 10:01 ?        00:00:00 [khelper]
root         5     1  0 10:01 ?        00:00:00 [kthread]
root         8     5  0 10:01 ?        00:00:00 [kblockd/0]
root         9     5  0 10:01 ?        00:00:00 [kacpid]
root       158     5  0 10:01 ?        00:00:00 [kseriod]
root       200     5  0 10:01 ?        00:00:00 [pdflush]
root       201     5  0 10:01 ?        00:00:00 [pdflush]
root       202     5  0 10:01 ?        00:00:00 [kswapd0]
root       203     5  0 10:01 ?        00:00:00 [aio/0]
root       678     5  0 10:01 ?        00:00:00 [khubd]
root       744     5  0 10:01 ?        00:00:00 [ata/0]
root       746     5  0 10:01 ?        00:00:00 [ata_aux]
root       760     5  0 10:01 ?        00:00:00 [scsi_eh_0]
root       761     5  0 10:01 ?        00:00:00 [scsi_eh_1]
root      1031     5  0 10:01 ?        00:00:00 [reiserfs/0]
root      1211     1  0 10:01 ?        00:00:00 udevd --daemon
root      1544     5  0 10:01 ?        00:00:00 [kpsmoused]
root      1875     5  0 10:01 ?        00:00:00 [wrap_wq]
root      1877     5  0 10:01 ?        00:00:00 [ndis_wq]
root      1959     5  0 10:01 ?        00:00:00 [kmirrord]
daemon    2383     1  0 10:02 ?        00:00:00 /sbin/portmap
root      2634     1  0 10:02 ?        00:00:00 /sbin/syslogd
root      2640     1  0 10:02 ?        00:00:00 /sbin/klogd -x
percival 11409 11408  0 12:36 ?        00:00:00 gnome-pty-helper
percival 11410 11408  0 12:36 pts/0    00:00:00 bash
percival 11735 11410  0 12:45 pts/0    00:00:00 ps -ef

Podemos combinar os parâmetros do modo como demonstrado no exemplo, a fim de termos no display as informações que necessitamos. O parâmetro "e" nos mostra TODOS os processos do sistema, enquanto o "f" nos lista algumas informações pertinentes aos mesmos, delimitadas a seguir:
  • UID: o responsável por ter iniciado o processo;
  • PID: o número de identificação do processo;
  • PPID: o número de identificação do pai deste processo (caso o processo tenha sido gerado por outro);
  • C: utilização de processamento sobre o tempo de vida do processo;
  • STIME: horário em que o processo "nasceu";
  • TTY: o terminal do qual o processo foi lançado;
  • TIME: o tempo requerido para lançar o processo (cumulativo);
  • CMD: o comando usado para iniciar o processo.

Notem que sempre o primeiro processo, conseqüentemente de PID "1", é o init (já visto há pouco na saída do comando "ps ax"). Os PIDs são distribuídos em ordem numérica crescente a partir do momento de sua execução, não podendo haver dois valores iguais para processos.

Página anterior     Próxima página

Páginas do artigo
   1. Analisando processos
   2. Adendo 1 - Gerenciamento de memória
   3. Voltando ao assunto...
   4. Adendo 2 - O init
   5. Mais um pouco sobre o tema...
   6. Adendo 3 - Matando processos
   7. Considerações finais
Outros artigos deste autor

Um pouco da história do Debian GNU/Linux

Instalando a DD-WRT em roteadores Linksys WR54G*

Livestation - Assista TV no seu GNU/Linux

Ubuntu 64: Como criar um chroot para aplicações 32 bits

Princípios do APT-GET: Conheça esta fantástica ferramenta do Debian

Leitura recomendada

Como escolher sua distribuição GNU/Linux

Shell script: *, [], {}, ????, como utilizá-los?

Ética na Programação

Sistemas Operacionais, Kernel e Shell

AUR - Arch Linux User-Community Repository

  
Comentários
[1] Comentário enviado por maran em 22/07/2008 - 10:32h

Percival, meus parabéns, realizou um excelente trabalho.
Gostei muito, bem explicado, ficou bem claro o que você quis passar.
Bom, só me resta adiciona-lo aos favoritos
:)

Abraços

[2] Comentário enviado por gjr_rj em 22/07/2008 - 11:05h

Parabéns,

também vai para meus favoritos.

[3] Comentário enviado por Pianista em 22/07/2008 - 11:35h

Muito Bom! está de parabéns! e para aqueles que quiserem matar uma arvore de processos pelo nome existe o "$ killall nomedocomandoqueiniciouoprocesso" d=^) .. EX: "$killall firefox", testem ai.. hauhauhauha.. xD

você é uma altarquia!
Abraços! Valew!

[4] Comentário enviado por phvie em 22/07/2008 - 14:06h

Ótimo artigo! Bem explicado e de fácil entendimento.

[5] Comentário enviado por eltondhiego em 22/07/2008 - 14:21h

Ótimo artigo!! Parabéns!!

[6] Comentário enviado por iz@bel em 22/07/2008 - 17:08h

Eu tava precisando aprender um pouco mais sobre isso mesmo, valeu!
Muito Bom!

[7] Comentário enviado por f_Candido em 23/07/2008 - 23:03h

Excelente. Ficou muito bom. Pré-requisito para qualquer aspirante a Linuxer.

Abraços

[8] Comentário enviado por ario em 24/07/2008 - 07:40h

Só para completar existe um aplicativo que se chama htop, vale a pena conhecer.
Para melhores informações: http://htop.sourceforge.net/
Precisa de bibliotecas ncurses instaladas.

htop é um visualizador de processos do Linux, bem como estado da memória, tudo com distinção de cores. É quase um gráfico, porém para consoles e emuladores de terminais. Ele concentra funções, de forma intregada dos comandos mem, tree, ps, kill, top, nice, ou seja tudo que é relacionado à processos (memória e cpu) numa mesma interface de forma organizada e agradável. Para mim é muito útil para manutenção remota via terminal SSH... Bem! somente usando é que a gente sabe, como que ele salva nestas horas!




[9] Comentário enviado por rafael_novello em 13/08/2008 - 09:56h

Acho que este é um dos melhores tutos que eu ja li...muito legal msm...parabens!!!!

Aqui sempre encontro ótimos tutos sobre Linux...

VLW

[10] Comentário enviado por eng_ividal em 18/09/2008 - 11:33h

Bem completo o seu artigo parabens!!!

[11] Comentário enviado por souza889 em 12/05/2009 - 21:13h

Percival

Sinceramente, este é o tutorial! claro não desmerecendo nenhum outro, mas gostei da forma com que abordou o assunto, deixou bem claro a importância do entendimento e conhecimento do sistema.
Parabéns. Este vai para meus favoritos.

Abração

[12] Comentário enviado por laurimourenbrame em 13/04/2012 - 14:29h

Parabéns, excelente artigo, me ajudou bastante, ou melhor, me salvou! Obrigado e abraço.

[13] Comentário enviado por vinteumdoonze em 14/03/2013 - 00:45h

Muito bom o artigo, aprendi muito, Parabéns. Ganhou +1 favoritos.

[14] Comentário enviado por felipe_futty em 07/06/2013 - 14:27h

Muito bom artigo, apenas fiquei com uma dúvida:
Como eu faria para saber quanto tempo EXATO um certo processo está rodando?


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts