Você está na página 1de 3

Controle de Processos - GNU/Linux (PDF)

1. Objetivo 1.1. Introduo 1.2. Background e foreground 1.3. Prioridades de processos 1.4. Comandos complementares de processos 1.4.1. Comando fuser 1.4.2. Comando nohup Objetivo Entender como feito o gerenciamento de processos no Linux. Inroduo Antes de qualquer coisa necessrio ter claro o conceito de processo. Processo uma tarefa em execuo controlada pelo Kernel ocupando uma rea na memria (RAM), no qual o Linux usa o mecanismo de identific-los por nmeros. Ou seja, tudo que estiver rodando no sistema ser um processo. o processo que utiliza os recursos de um computador, como memria e processamento. Um simples comando um processo, um browser aberto um processo. O shell que voc est usando um processo, seu terminal um processo. Quem controla os processos no sistema o Kernel, alis essa uma de suas tarefas. responsabilidade do Kernel gerenciar os processos tentando otimizar a performance da CPU - Unidade Central de Processamento. DICA LPI: O processo init, que pai de todos os outros processos.

O GNU/Linux usa um mecanismo para idenfic-los por nmeros, ou seja, cada processo tem um nmero diferente de identificao que chamamos de PID. Dessa forma pode-se manipul-los e obter o seu controle. Controlar poder alterar, matar e reiniciar. Na prtica usa-se mais para matar um processo. Formas de visualizao de processos:

# ls /proc
Nesse diretrio voc ver vrios arquivos com informaes gerais que o kernel nos fornece, por exemplo os arquivos: cpuinfo, ioports, meminfo, interrupts, mounts, swaps e muitos outros. Vale a pena ver o contedo desses arquivos para apreender mais sobre eles. Ainda no diretrio /proc, voc pode entrar em um nmero (diretrio) que identifica um processo e listar o contedo dele, exemplo:

# cd /proc/3512 # cat cmdline

/usr/lib/iceweasel/firefox-bin-afirefox
Foi escolhido um nmero aqui aleatoriamente no sistema. No seu sistema este nmero pode ser referente a outro processo a at mesmo no existir, portanto escolha um nmero no seu diretrio /proc e o explore. Dois arquivos interessantes de explorar nesses diretrios dos processos so:

cmdline status
Para saber mais sobre o /proc: digite: # man proc Para listar todos os processos digite: # ps aux | more Explicando o comando: # ps aux a = todos os processos u = de todos os usurios x = e at processos sem controle pelo terminal Ou seja, todos os processos mesmo! Controlado ou no pelos terminais significa que so processos internos, que no foram gerados por um usurio que esteja usando determinado terminal. melhor usar o comando ps do que entrar no /proc e entrar em diretrio por diretrio. O PID nada mais do que Identificao do Processo. atravs do PID que possvel manipular um processo. Ou seja, eliminar caso ele esteja atrapalhando o sistema! O PID seria a segunda coluna do resultado do comando ps. Vamos analisar as colunas do comando ps.

# ps aux | more
USER = Usurio responsvel pelo processo. PID = Nmero que identifica o processo, no se repete! % CPU = Quanto de CPU ele usa!

% MEM = Quanto de MEM ele usa! VSZ = Tamanho virtual do processo RSS = Indica a quantidade de memria usada (em KB) TTY = Terminal que gerou o processo ? = sem terminal STAT = Estado do processo, sendo representado por uma letra R = Executvel D = em espera no disco; S = Suspenso; T = Interrompido; Z = Zumbi; COMMAND = nome do processo, ou seja, o comando em si.