Why does `htop` show more process than `ps`
Solution 1
By default, htop
lists each thread of a process separately, while ps
doesn't. To turn off the display of threads, press H
, or use the "Setup / Display options" menu, "Hide userland threads". This puts the following line in your ~/.htoprc
or ~/.config/htop/htoprc
(you can alternatively put it there manually):
hide_userland_threads=1
(Also hide_kernel_threads=1
, toggled by pressing K
, but it's 1 by default.)
Another useful option is “Display threads in a different color” in the same menu (highlight_threads=1
in .htoprc
), which causes threads to be shown in a different color (green in the default theme).
In the first line of the htop
display, there's a line like “Tasks: 377, 842 thr, 161 kthr; 2 running”. This shows the total number of processes, userland threads, kernel threads, and threads in a runnable state. The numbers don't change when you filter the display, but the indications “thr” and “kthr” disappear when you turn off the inclusion of user/kernel threads respectively.
When you see multiple processes that have all characteristics in common except the PID and CPU-related fields (NIce value, CPU%, TIME+, ...), it's highly likely that they're threads in the same process.
Solution 2
For me, on a more-or-less current arch linux system, ps xf
shows me only the processes owned by my user ID. htop
shows me all processes. Try ps -ef
for a list of all processes, or perhaps ps -ejH
to get a child/parent relationship listing.
Related videos on Youtube
Cheng
Updated on September 18, 2022Comments
-
Cheng over 1 year
In
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
, it shows up like:Why does htop show more process than ps?
-
tuxayo about 6 yearsAny clue about why this is the default? Why is that relevant? It seems like adding noise but I guess there is a good reason.
-
fIwJlxSzApHEZIl over 3 yearsThis is brilliant thank you. However I was hoping to get the tree structure within
htop
. -
Joseph Sheedy over 3 yearsPressing F5 switches to tree view
-
Shautieh over 3 years@tuxayo I was curious too and found this: github.com/htop-dev/htop/issues/99#issuecomment-748142128 tl;dr it was a kind of a philosophical choice.
-
tuxayo over 3 yearsThanks @Shautieh this is a great find.