Por que 'htop' mostra mais processos que 'ps'

144

Em ps xf

26395 pts/78   Ss     0:00  \_ bash
27016 pts/78   Sl+    0:04  |   \_ unicorn_rails master -c config/unicorn.rb                                           
27042 pts/78   Sl+    0:00  |       \_ unicorn_rails worker[0] -c config/unicorn.rb                                        

Em htop , aparece como:

Por que o htop mostra mais processos que o ps?

    
por Cheng 31.03.2011 / 12:48

2 respostas

206

Por padrão, htop lista cada thread de um processo separadamente, enquanto ps não. Para desativar a exibição de threads, pressione H ou use o menu "Setup / Display options", "Hide userland threads". Isso coloca a seguinte linha no seu ~/.htoprc ou ~/.config/htop/htoprc (você pode alternativamente colocá-lo manualmente):

hide_userland_threads=1

(também hide_kernel_threads=1 , alternado pressionando K , mas é 1 por padrão).

Outra opção útil é "Exibir encadeamentos em uma cor diferente" no mesmo menu ( highlight_threads=1 in .htoprc ), o que faz com que os encadeamentos sejam exibidos em uma cor diferente (verde no tema padrão).

Na primeira linha da exibição htop , há uma linha como "Tarefas: 377, 842 thr, 161 kthr; 2 em execução ”. Isso mostra o número total de processos, encadeamentos do território do usuário, encadeamentos do kernel e encadeamentos em um estado executável. Os números não mudam quando você filtra a tela, mas as indicações “thr” e “kthr” desaparecem quando você desativa a inclusão de threads de usuário / kernel, respectivamente.

Quando você vê vários processos que têm todas as características em comum, exceto os campos relacionados a PID e CPU (valor NIce, CPU%, TIME +, ...), é altamente provável que sejam threads no mesmo processo.

    
por 31.03.2011 / 22:06
0

Para mim, em um sistema de linux arch mais ou menos atual, ps xf mostra apenas os processos pertencentes ao meu ID de usuário. htop mostra todos os processos. Experimente ps -ef para obter uma lista de todos os processos ou talvez ps -ejH para obter uma listagem de relação pai / filho.

    
por 31.03.2011 / 20:22