CodeGym /Cursos /Docker SELF /Gerenciamento de processos do sistema: ps, top, htop

Gerenciamento de processos do sistema: ps, top, htop

Docker SELF
Nível 2 , Lição 4
Disponível

Gerenciamento de processos do sistema: ps, top, htop

1. Comando ps — uma visão estática dos processos

Se o Linux fosse um restaurante, o processo seria o chef na cozinha. É uma instância executável de um programa, que existe na memória. Quando você executa um aplicativo ou um arquivo pela linha de comando, é criado um processo, que então executa suas tarefas até terminar.

Do ponto de vista da programação, os processos são gerenciados pelo kernel do Linux, e cada um deles possui um identificador único — PID (Process ID).

O comando ps (process status) é um comando básico para visualizar a lista de processos. Ele fornece um instantâneo estático dos processos atuais no sistema. Usando ps, você pode obter informações sobre processos em execução: seus IDs, proprietário, linha de comando e recursos utilizados.

Sintaxe Básica

É assim que o comando básico se parece:

ps

Isso mostrará os processos em execução no terminal atual.

Mas isso é muito sem graça! Vamos adicionar um pouco de tempero:

ps aux

Aqui:

  • a — mostra processos de outros usuários.
  • u — adiciona um formato mais legível.
  • x — inclui processos que não estão ligados ao terminal.

Exemplo de saída:

USER         PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root           1  0.0  0.1  22556  1044 ?        Ss   12:34   0:01 /sbin/init
student      2345  0.1  0.2  34567  2048 pts/0    S+   12:35   0:02 bash
student      4567  0.3  0.5  56789  5144 pts/0    R+   12:36   0:03 ps aux
  • USER: o usuário que iniciou o processo.
  • PID: identificador do processo.
  • %CPU: porcentagem de uso do CPU.
  • %MEM: porcentagem de uso da memória.
  • COMMAND: comando que iniciou o processo.

Opções Avançadas

  1. Ver a estrutura hierárquica dos processos:

    ps -ejH
    

    Isso ajuda a entender quais processos são "filhos" de outros processos.

  2. Filtrar por PID:

    ps -p 1234
    

    Onde 1234 é o seu PID. Exibe apenas o processo especificado.

  3. Exibir todos os processos junto com o comando completo:

    ps -ef
    

2. Comando top — monitoramento dinâmico de processos

top é tipo uma TV pros processos. Dá pra ver em tempo real como os processos estão mudando. Se você tá rodando um servidor ou seu computador começou a "travar", top vai ser seu melhor amigo. Com ele, você descobre quais processos estão consumindo mais CPU e memória.

Noções básicas de uso

É só digitar no terminal:

top

Exemplo de saída:

  • A linha de cima mostra a "carga" do sistema.
  • A parte do meio fala das tarefas (total, ativas, dormindo, zumbi).
  • A parte de baixo é sobre a memória.
  • O bloco inferior é uma lista de processos, com várias infos úteis, como PID, USER, %CPU e COMMAND.

Navegação no top

  • Pressione k pra finalizar um processo. Digite o PID.
  • Pressione P pra ordenar os processos pelo uso de CPU.
  • Pressione M pra ordenar pelo uso de memória.
  • Pressione q pra sair.

3. Utilitário htop — interface confortável

Se o top parece muito "cru" pra você, seja bem-vindo ao htop. É uma interface visual para monitoramento de processos. Ele é colorido, suporta uso de mouse e é amigável de entender.

Instalação

Se o htop não estiver instalado, adicione ele:

sudo apt-get install htop # Para distribuições baseadas em Debian
sudo yum install htop     # Para distribuições baseadas em RedHat

Iniciar

Para iniciar o htop, basta digitar:

htop

Exemplo de interface:

Vantagens do htop:

  • Possibilidade de rolar a lista de processos.
  • Destaque de cores para CPU, memória e swap.
  • Teclas práticas para encerrar processos (por exemplo, F9).

4. Tarefa prática

Tarefa 1: Encontre o processo mais "guloso"

  • Abra o top ou htop.
  • Ordene os processos por CPU e descubra o PID dele.

Tarefa 2: Finalize o processo

  • Use kill para "matar" o processo:
    kill <PID>
    

Tarefa 3: Análise do processo

  • Use ps para analisar o PID do processo:
    ps -p <PID> -o pid,user,%cpu,%mem,cmd
    

Perigos e recomendações

  1. Não mate processos se não tiver certeza de que eles não são críticos para o funcionamento do sistema. Por exemplo, o processo com PID 1 é o init, a base do SO.
  2. A ferramenta htop precisa ser instalada separadamente, caso não esteja disponível. Se o comando não funcionar, verifique a instalação.
  3. Preste atenção nas permissões. Finalizar processos iniciados por outro usuário pode exigir direitos de administrador.

Na prática, você verá que essas ferramentas tornam o trabalho com Linux incrivelmente flexível e intuitivo. Agora você é o chefe dos processos!

Comentários
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION