Por que o htop não exibe os mesmos processos que o top?

16

Eu tenho um servidor doméstico, por vezes, rodando a uma alta taxa de uso da CPU de cerca de 50 a 70 por cento.

Em htop , meu gerenciador de processos favorito, posso classificar os processos pelo uso da CPU, mas muitas vezes não há nenhum processo consumindo mais de 0% da CPU. Por outro lado, htop exibe todo o uso da CPU do sistema, que é cerca de 50%, como dito anteriormente.

Eu acho que há uma explicação fácil para isso, mas eu não sei disso.

Talvez existam alguns processos ocultos? Mas mesmo executá-lo como root não mostra mais processos.

EDITAR:

Eu olhei para top , que mostra (pelo menos) mais dois processos:

  230 root      20   0     0    0    0 R 37.4  0.0 107:06.59 md127_raid5                                          
20403 root      35  15     0    0    0 D  9.6  0.0   2:45.78 md127_resync   

Portanto, meu ataque mdadm está atualmente sendo ressincronizado, o que foi confirmado quando exibi /proc/mdstat . (Veja o primeiro comentário.)

Isso transforma a pergunta em: "Por que o htop não exibe os mesmos processos que o topo?"

    
por leemes 03.06.2012 / 01:24

1 resposta

16
  

Por que o htop não exibe os mesmos processos que o topo?

Porque htop oculta os encadeamentos do kernel por padrão, enquanto o superior não. Você pode desativar esta opção em F2 -settings em htop .

  1. Antes:

  2. Desmarque a configuração Hide kernel threads , pressione Esc para deixar a tela em vez de F10 .

  3. Observe o novo número de kthr (kthreads) no cursor e todos os novos processos k... que apareceram. Você pode classificá-los por CPU, etc. como de costume. Além do nome (começa com um k , tem um / no final), você também pode identificar threads do kernel por seus PIDs muito baixos (observe o 1, 2, 3 ... 17 na captura de tela?)

por ish 03.06.2012 / 02:05