Este artigo descreve de maneira básica o tão importante conceito de processos no Linux e, em seguida, mostra quais os meios mais usados para controlá-los e manipulá-los.
O ps é um comando de extrema importância para o gerenciamento de processos. Por ele, é possível saber quais os processos em execução atualmente, quais os UIDs e PIDs correspondentes, entre outros.
Se somente ps for digitado na linha de comando, geralmente o sistema mostra quais os processos do usuário. É preciso usar uma combinação de opções para obter mais detalhes.
As opções mais importantes são os seguintes:
a - mostra todos os processos existentes;
e - exibe as variáveis de ambiente relacionadas aos processos;
f - exibe a árvore de execução dos processos;
l - exibe mais campos no resultado;
m - mostra a quantidade de memória ocupada por cada processo;
u - exibe o nome do usuário que iniciou determinado processo e a hora em que isso ocorreu;
x - exibe os processos que não estão associados a terminais;
w - se o resultado de processo não couber em uma linha, essa opção faz com que o restante seja exibido na linha seguinte.
Das opções acima, a combinação mais usada é aux:
$ ps aux
Como exemplo, o resultado obtido com esse comando foi o seguinte:
Note que usando a combinação lax, o resultado mostra mais detalhes:
$ ps lax
A seguir, segue a descrição dos campos mostrados anteriormente e alguns que só são mostrados com a combinação lax:
USER - nome do usuário dono do processo;
UID - número de identificação do usuário dono do processo;
PID - número de identificação do processo;
PPID - número de identificação do processo pai;
%CPU - porcentagem do processamento usado;
%MEM - porcentagem da memória usada;
VSZ - indica o tamanho virtual do processo;
RSS - sigla de Resident Set Size, indica a quantidade de memória usada (em KB);
TTY - indica o identificador do terminal do processo;
START - hora em que o processo foi iniciado;
TIME - tempo de processamento já consumido pelo processo;
COMMAND - nome do comando que executa aquele processo;
PRI - valor da prioridade do processo;
NI - valor preciso da prioridade (geralmente igual aos valores de PRI);
WCHAN - mostra a função do kernel onde o processo se encontra em modo suspenso;
STAT - indica o estado atual do processo, sendo representado por uma letra: R - executável; D - em espera no disco; S - Suspenso; T - interrompido; Z - Zumbi. Essas letras podem ser combinadas e ainda acrescidas de: W - processo paginado em disco; < - processo com prioridade maior que o convencional; N - processo com prioridade menor que o convencional; L - processo com alguns recursos bloqueados no kernel.
[6] Comentário enviado por luiscarlos em 24/11/2005 - 10:29h
Sempre percebi que a maquina depois de inciar mesmo com os serviços não essenciais todos parados, ainda rodam em médiua de 60 a 70 processos, a maioria em estado sleeping ou em espera, alguém sabe quais os processos minimos necessários para que a maquina funciona usando o mínimo de memória? eu gostaria de rodar uma console com o mínimo necessário e tmb depois rodar o KDE com o mínimo necesário, já retirei tudo que nao precisava, mas ainda tem muito processo, queria diminuir pra uns 30 no maximo
Só uma complementação a vezes até util para não deixar o SHELL preso é usar recursos em background .. util para quando se quer copiar arquivos acima de 200 megas e não se ker ficar preso esperando terminar.. basta usar no final do comando &.
[12] Comentário enviado por stickybit em 21/01/2009 - 17:04h
Vale lembrar que, os números nice vão de -20a +19. Qualquer usuário pode iniciar um processo com um número nice positivo, mas apenas o superusuário (root) pode diminuir o número nice de um processo, aumentando com isso a sua prioridade.