Cada processo tem um único número de ID, começando por 1 e subindo. Quando um novo processo é criado, o próximo PID não usado é alocado. Os PIDs são (actualmente) inteiros de 16-bit com sinal, portanto eles terminam e dão a volta no 32767; este é o comportamento normal e nada há a recear.
Todos os processos têm um processo pai. A excepção é o processo 1 (init), que é a raiz de toda a hierarquia de processos; não tem nenhum pai.
Cada processo é um membro de um grupo de processos. Os grupos de processos são usados para distribuição dos sinais, e por terminais para arbitrar acessos à entrada: os processos que têm o mesmo grupo do terminal são principais e podem ler a entrada, enquanto os outros irão bloquear com um sinal se tentarem ler.
Os IDs das sessões são usados normalmente para determinar o que acontece quando se dá "hangup".
O terminal de controlo (tty) é geralmente o dispositivo (porto série, pty, etc.) de onde o processo foi começado, e que utiliza para entradas e saídas. Nem todos os processos têm um terminal de controlo. O KPM vasculha o directório /dev com o objectivo de determinar o nome do terminal, mas isto pode falhar. Por uma questão de espaço, só os dois últimos caracteres do nome tty são mostrados (portanto /dev/ttyp6 é mostrado como p6)
Um tty a correr tem por dono um processo. O TPGID é o PGID desse processo.
Este é o nome (real) do utilizador que é dono do processo. Se o ID efectivo de um processo for diferente do ID real, isso será indicado por: "*" ou "+". O asterisco é usado quando o utilizador efectivo é o super-utilizador (geralmente indica um executável que é set-uid para o root).
O valor nice determina a frequência com que um processo pode aceder ao CPU, e a fatia de tempo de acesso. O valor situa-se entre -20 a 20; 0 é o valor nice por omissão. Números menores dão mais tempo de CPU ao processo. Apenas o super-utilizador pode baixar o valor de nice.
Isto é o tamanho máximo da próxima fatia de tempo a atribuir ao processo (ou o que sobrar da fatia de tempo actual, se o processo estiver a correr). O número situa-se no intervalo de -20 a 20, números mais pequenos indicam uma fatia de tempo maior.
FIFO (F) e Round-Robin (R) são políticas de escalonamente em tempo-real; OTHER (O) é a política normal de tempo partilhado em Unix. Os processos F e R têm uma prioridade de tempo-real entre 1 e 99. Um processo correrá desde que não haja processos em condições de execução com maior prioridade. Os processos Round-Robin correrão durante uma fatia de tempo, depois de terem sido colocados em último na fila de prioridade correspondente. Os processos FIFO executam até acederem o CPU (por adormecerem ou bloquearem) ou serem interrompidos por um processo de prioridade superior. Apenas o super-utilizador (root) pode modificar a política de escalonamento.
Os processos de tempo-real (FIFO e Round-Robin) têm prioridades entre 1 e 99. Um processo interrompe outro qualquer que tenha menor prioridade. Processos normais de tempo partilhado (política O) têm a prioridade 0. Apenas o super-utilizador (root) pode modificar a prioridade de tempo-real.
Uma falha de página ocorre quando um processo tenta ler ou escrever de/para uma página de memória que não está presente na RAM. Uma falha importante de página ocorre quando está envolvido acesso ao disco, tal como swapping de páginas de memória.
Uma falha de página ocorre quando um processo tenta ler ou escrever de/para uma página de memória que não está presente na RAM, ou escreve para uma página que está protegida contra escrita. Uma falha pequena dá-se quando não há está envolvido acesso ao disco, por exemplo quando se tenta escrever para uma página partilhada "copy-on-write".
Isto é o tamanho do texto (isto é, código executável) do processo que está actualmente presente na RAM.
Isto é o tamanho da zona de dados (código não executável) do processo que está actualmente presente na RAM.
Isto é o tamanho total da imagem do processo. Inclui todo o código, dados, e bibliotecas partilhadas usadas pelo processo, incluindo páginas que foram "swapped".
Isto é simplesmente a diferença entre TAMANHO e RSS; por outras palavras é o tamanho do processo residente no disco.
Isto é o tamanho da parte do processo (código e dados) que reside actualmente na RAM, incluindo bibliotecas partilhadas. Indica aproximadamente quanta RAM está a ser usado pelo processo.
Isto é a quantidade de memória que um processo partilha com outros. Não significa que esteja a ser usada por outros processos, apenas que tal é possível.
Isto é o número (não o número de bytes!) de páginas em RAM que foram modificadas desde a última vez que foram escritas para o disco. As páginas inválidas têm de ser escritas para o disco antes de serem libertadas e utilizadas para outras coisas.
Um processo está em qualquer altura num dos seguintes estados:
R (em execução): o processo está a correr no cpu ou está preparado para correr.
S (adormecido): o processo está a aguardar a ocorrência de um evento (tal como I/O ou um temporizador).
D (sono não interrompivel): o processo está a aguardar a ocorrência de um evento, e não pode ser interrompido (geralmente de um dispositivo de driver).
T (parado): o processo está parado, ou está a ser seguido por outro processo.
Z (zombie): o processo terminou, mas o seu pai ainda não foi buscar a informação final.
Se o processo estiver completamente "swapped" (não tiver páginas residentes), um 'W' é mostrado neste campo. (Isto também é válido para processos do núcleo, tal como kswapd.)
Isto dá informação adicional sobre o estado dos processos. Ver o código fonte do núcleo de Linux para mais detalhes.
Se o processo estiver à espera de alguma coisa, esta é a função do núcleo em que ele está parado. (Prefixos do_ ou sys_ são retirados do nome para torná-lo mais pequeno.)
Isto é a ID (real) do utilizador dono do processo.
Isto é percentagem de tempo de CPU que o processo está a utilizar, em média nos últimos 30 segundos (média decaindo exponencialmente).
Isto é a quantidade de tempo de CPU utilizada pelo processo desde a última actalização da tabela de processos do kpm.
Isto é a percentagem da memória total RAM utilizada pelo processo (como tamanho residente). Inclui as bibliotecas partilhadas, pelo que é exagerado.
Isto é a altura de quando o processo foi iniciado.
Isto é quanto tempo de CPU o processo usou desde de que foi iniciado.
Isto é o nome do comando (nome do ficheiro) que começou o processo. Nomes compridos são cortados.
Isto é a linha de comando, incluindo argumentos, que iniciou o processo. Se no menu Opções estiver seleccionado "Esconder Caminho de Comando", então o caminho da linha de comando não é mostrado. Os processos "swapped" devem apenas mostrar o nome de comando entre parenteses (isto também é válido para os processos do núcleo).