Perché `htop` mostra più processi di` ps`


174

Nel 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                                        

In htop, si presenta come: htop mostra più linee unicorn_rails

Perché htop mostra più processi di ps?


Risposte:


249

Per impostazione predefinita, htopelenca ogni thread di un processo separatamente, mentre psnon lo fa. Per disattivare la visualizzazione dei thread, premere Ho utilizzare il menu "Opzioni di impostazione / visualizzazione", "Nascondi thread area utente". Questo inserisce la seguente riga nel tuo ~/.htoprco ~/.config/htop/htoprc(puoi alternativamente metterlo lì manualmente):

hide_userland_threads=1

(Inoltre hide_kernel_threads=1, commuta premendo K, ma è 1 per impostazione predefinita.)

Un'altra opzione utile è "Visualizza fili con un colore diverso" nello stesso menu ( highlight_threads=1in .htoprc), che consente di mostrare i fili con un colore diverso (verde nel tema predefinito).

Nella prima riga del htopdisplay, c'è una riga come “Attività: 377, 842 thr, 161 kthr; 2 in esecuzione ". Questo mostra il numero totale di processi, thread di userland, thread del kernel e thread in uno stato eseguibile. I numeri non cambiano quando si filtra il display, ma le indicazioni “thr” e “kthr” scompaiono quando si disattiva l'inclusione rispettivamente dei thread utente / kernel.

Quando vedi più processi che hanno tutte le caratteristiche in comune tranne i campi PID e relativi alla CPU (valore NIce, CPU%, TIME +, ...), è molto probabile che siano thread nello stesso processo.


Qualche idea sul perché questo è il valore predefinito? Perché è rilevante? Sembra aggiungere rumore ma credo che ci sia una buona ragione.
tuxayo,

0

Per me, su un sistema arch linux più o meno attuale, ps xfmi mostra solo i processi di proprietà del mio ID utente. htopmi mostra tutti i processi. Prova ps -efun elenco di tutti i processi, o forse ps -ejHper ottenere un elenco di relazioni figlio / genitore.

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.