How to See Which Processes Are Using the Most Resources on Linux
With top and htop, and why zombie processes aren't something to worry about.
Linux offers several tools to see what's using CPU and memory —
with top you have enough to start, with nothing to
install.
top: always available, nothing to install
top
Opens a view that updates itself every few seconds, already sorted
by CPU usage from highest to lowest. Press q to quit.
Tip: inside top, press
Shift + M to sort by memory instead of CPU — useful when
you suspect the problem is RAM, not the processor.
htop: the more comfortable version to read
sudo apt install htop
htop
Adds colour, visual bars per CPU core, and lets you end a process
by pressing F9 on it, without having to type its number
(PID) by hand.
A clarification that avoids unnecessary scares
Seeing a very long list of processes doesn't mean something's wrong. Many are zombie processes — they already finished their work, but their entry sticks around for an instant until the system cleans it up. They don't use real CPU or memory; the system itself removes them automatically without you having to do anything.
Before ending a process
First identify exactly what that process is (search its name if you don't recognise it) before ending it — some processes with unclear names are actually part of an important system service.
Tip: if the process belongs to a service managed by
systemd, it's safer to restart that service
(sudo systemctl restart service-name) than to force-end
the process directly.
Frequently asked questions
Do I need to install anything to see processes on Linux?
No, the top command comes included in practically every distribution with no installation needed. htop is a visually more comfortable alternative, but optional.
Are zombie processes a problem?
No, they don't use real CPU or memory — they're leftover entries that the system cleans up automatically. Seeing several in the list doesn't indicate any problem needing your intervention.
Is it safe to end any process using a lot of resources?
Only if you know for certain what it is. If it belongs to a system service managed by systemd, it's safer to restart that service than to end the process directly.