Capítulo 4.1 - Introdução aos Processos
Objetivos de Aprendizagem
Ao final deste capítulo, você será capaz de:
- Compreender o que é um processo
- Explicar o ciclo de vida de um processo
- Identificar os processos em execução
- Entender a hierarquia de processos
O que é um Processo?
Um processo é uma instância de um programa em execução. Cada processo possui seus próprios recursos: memória, arquivos abertos, etc.
Características:
- PID (Process ID): Identificador único
- PPID (Parent Process ID): Processo pai
- Espaço de memória: Isolado dos outros processos
- Recursos: Arquivos abertos, rede, etc.
O Problema da Gestão
Sem uma gestão adequada:
- Como ver quais programas estão rodando?
- Como parar um programa que não responde mais?
- Como gerenciar os recursos utilizados?
- Como entender a hierarquia?
A Solução: Ferramentas de Gerenciamento
O Linux fornece diversas ferramentas para gerenciar processos:
Ciclo de Vida de um Processo
Estados:
- Created: Processo criado (fork)
- Ready: Pronto para executar
- Running: Em execução
- Blocked: Em espera (I/O, sinal)
- Terminated: Finalizado
Hierarquia de Processos
Os processos formam uma árvore:
Características:
- init/systemd: PID 1, pai de todos
- Processos filhos: Criados por fork()
- Processos órfãos: Adotados pelo init se o pai morre
- Processos zumbi: Finalizados mas não limpos
Comandos Básicos
ps - Visualizar Processos
# Todos os processos
ps aux
# Processos do usuário
ps
# Formato personalizado
ps -eo pid,ppid,cmd,%mem,%cpu
# Por usuário
ps -u user1
# Árvore de processos
ps auxf
ps -ejH
top - Monitoramento em Tempo Real
# Interface interativa
top
# Opções
top -u user1 # Por usuário
top -p 1234 # Processo específico
top -d 2 # Atualização a cada 2 segundos
Comandos no top:
q: Sairk: Matar um processor: Alterar prioridadeM: Ordenar por memóriaP: Ordenar por CPU
htop - Versão Aprimorada
# Interface mais amigável
htop
# Instalar se necessário
sudo apt install htop # Ubuntu/Debian
sudo yum install htop # Red Hat/CentOS
Resumo
Neste capítulo, você aprendeu:
Processo: Instância de um programa em execução
PID/PPID: Identificadores únicos, hierarquia
Ciclo de vida: Created → Ready → Running → Blocked → Terminated
Hierarquia: Árvore com init como raiz
Ferramentas: ps, top, htop para visualizar e monitorar
Próximos Passos
Capítulo 4.2: Visualização de Processos
Capítulo 4.3: Controle de Processos
Capítulo criado em: Dezembro 2024