Perché htop non mostra gli stessi processi di top?


18

Ho un server di casa a volte in esecuzione con un elevato tasso di utilizzo della CPU da circa 50 a 70 percento.

In htop, il mio gestore dei processi preferito, posso ordinare i processi in base all'utilizzo della CPU, ma spesso non c'è nessun processo che consuma più dello 0% di CPU. Dall'altro lato, htopvisualizza l'intero utilizzo della CPU del sistema che è di circa 50 percento, come detto prima.

Immagino che ci sia una spiegazione semplice per questo, ma non lo so.

Forse ci sono alcuni processi nascosti? Ma anche eseguirlo come root non mostra più processi.

MODIFICARE:

Ho esaminato top, che sta mostrando (almeno) altri due processi:

  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   

Quindi il mio raid mdadm è attualmente in fase di risincronizzazione, il che è stato confermato quando l'ho visualizzato /proc/mdstat. (Vedi il primo commento.)

Quindi questo trasforma la domanda in: "Perché htop non mostra gli stessi processi di top?"


topmostra più processi. Appartiene al processo in questione mdadm, che attualmente sta eseguendo una risincronizzazione come ho scoperto. topmostra il processo sotto il nome md127_raid5e md127_resync. Il primo è in esecuzione dall'avvio del sistema, il secondo da quando è stata attivata la risincronizzazione. Quindi questo trasforma la domanda in: "Perché htop non mostra gli stessi processi di top?"
Leemes

Risposte:


19

Perché htop non mostra gli stessi processi di top?

Perché htopnasconde i thread del kernel per impostazione predefinita, mentre top no. È possibile disattivare questa opzione in F2-settings in htop.

  1. Prima:

    inserisci qui la descrizione dell'immagine

  2. Deseleziona l' impostazione Nascondi thread del kernel , premi Escper lasciare la schermata anziché F10.

    inserisci qui la descrizione dell'immagine

  3. Notare il nuovo numero di kthr(kthreads) sul cursore e tutti i nuovi k...processi che sono stati visualizzati. Puoi ordinarli per CPU, ecc. Come al solito. Oltre al nome (inizia con una k , ha una /verso la fine), puoi anche identificare i thread del kernel con i loro PID molto bassi (noti 1, 2, 3 ... 17 nello screenshot?)

    inserisci qui la descrizione dell'immagine


Grazie mille. Questo è qualcosa che volevo sapere da anni! E la soluzione è così semplice ... Grazie per i bei screenshot :)
leemes

1
Il tasto di scelta rapida è H (MAIUSC + H).
glebm,

2
@glebm (in ritardo, ma penso che valga la pena aggiungere;)): Il tasto di scelta rapida per visualizzare i thread del kernel è K(Shift + k). Il tasto di scelta rapida H(Maiusc + h) visualizza (o nasconde, se già visualizzato) i thread delle aree utente .
Henning Kockerbeck,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.