- The top command is the standard and universal tool for managing processes and analyzing CPU and RAM load on Unix systems.
- Btop represents modern evolution, offering an interactive visual interface with mouse support and real-time performance graphs.
- The transition from bashtop and bpytop to btop has allowed for optimized performance through the use of C++, reducing system dependencies.

When we delve into the world of Linux system administration , one of the first things we need to know is what on earth is going on under the hood of our machine. For years, the `top` command has been the undisputed standard, that old friend that's always there to tell us which process is hogging RAM or why the processor is overheating.
However, the open-source ecosystem isn't standing still, and alternatives have emerged that make the classic monitor seem like a relic from the 90s. Tools like btop and its predecessors have arrived to give us a much more visual, intuitive, and, frankly, much more pleasing experience, turning the terminal into a true modern control center .
The essential classic: Mastering the top command

TOP (which is simply an acronym for Table of Processes ) is the basic tool that comes pre-installed on almost every Linux distribution or UNIX system. Its function is simple but vital: to allow us to monitor and manage tasks running in real time. It's the first line of defense for detecting zombie processes , identifying CPU spikes, or simply extracting the PID of an application that has frozen.
Upon launching it, we find an interface divided into several sections. At the top, we have the uptime (similar to what we would see with the uptime command), where we can check the time, how long the server has been running, and the average CPU load at 1, 5, and 15-minute intervals. Just below, the task status details how many processes are running, sleeping, stopped, or in a zombie state.
In-depth analysis of resource usage in TOP
CPU usage breakdown is crucial for understanding performance. We'll see values like us (user) for common applications, sy (system) for the kernel, and the id (idle) value , which tells us how much CPU is free. An interesting piece of information is steal time (st) , which only appears in virtual machines and tells us how long the virtual CPU has been waiting for the real one.
Regarding memory, TOP differentiates between VIRT (total virtual memory), RES (actual physical RAM used), and SHR (shared memory). To manage these processes, we can use hotkeys: the M key sorts by memory, P by CPU, and T by execution time. If we need to clean up, the k key allows us to kill a process by entering its PID, and we can force termination with the SIGKILL signal (9).
Advanced tricks and top settings
For those seeking more control, TOP allows you to modify the refresh rate with the do key using the command top -d It is also possible to filter the information by pressing the key o We can create rules, such as showing only processes that consume more than 0.2% of CPU (using %CPU>0.2If we want to save a record for later analysis, we can generate a snapshot redirecting the output to a file with top -b -n 5 > archivo.txt.
Btop: The visual and modern evolution

If top is the austere tool, btop is the Ferrari of resource monitors. Written in C++, it's the third generation of a project that started with bashtop (in Bash) and continued with bpytop (in Python). Its main advantage is that it offers a graphical interface in the terminal that supports mouse input, allowing us to click on menus and buttons as if we were in a desktop application.
The btop screen is a dashboard filled with real-time graphs . Not only do we see the process list, but we also have detailed charts showing CPU core usage, network activity per interface, and disk performance (read/write). All of this can be extensively customized through the options menu (M or Esc key), where we can change color themes , such as the popular Catppuccin, or adjust the module layout.
Btop installation and commissioning
Installing it is a piece of cake on most distributions. On Ubuntu, all you need to do is... sudo apt install btopIn Fedora we use sudo dnf install btop and on Arch Linux sudo pacman -S btopIf an error appears when running it... UTF-8 localeThis can be solved by forcing the encoding with btop --force-utf or by configuring the variable LONG in the user's .bashrc file.
In everyday use, btop simplifies task management. To terminate a process, simply select it and press T (SIGTERM) or K (SIGKILL) . If you want to delve deeper into a specific process, press Enter to view its detailed statistics . Furthermore, it allows you to quickly filter the process list with the F key, which is a lifesaver when the system is overloaded and there are hundreds of lines on the screen.
Bpytop: The Python-based alternative

Before btop became established in C++, there existed bpytopAlthough it shares the same visual philosophy and functionality as its successor, it is developed in Python and requires the library psutilIt remains a viable option, especially in environments where Python is already pre-installed and a Python installation is preferred. pip3.
Bpytop maintains mouse support and the ability to send signals such as SIGINT or SIGTERM . Like btop, it allows you to change the appearance using bashtop-compatible themes, which are usually stored in the .config/bpytop/themes directory . It's a powerful tool, although btop is generally preferred nowadays due to its fewer dependencies and more optimized performance.
Comparison and professional workflow

It's important to understand that none of these tools are the same. TOP is the survival option : it's everywhere and never fails. Btop is the active monitoring option: ideal for having it open in a tmux or screen panel while working in another, giving you constant visibility of the hardware without switching windows.
However, btop and top are local monitoring tools. If you manage a fleet of servers, the next logical step is to move to centralized monitoring solutions like Prometheus and Grafana. While btop tells you what's happening right now on a particular machine, these industrial solutions offer historical data and automatic alerts when a service goes down, thus complementing the immediate response capabilities provided by endpoint monitors.
We offer a range of options, from the technical simplicity of `top` to the visual sophistication of `btop` and `bpytop`, allowing you to choose the right tool depending on your needs: a lightweight, universal tool or an intuitive control panel with mouse support and graphics. Whether managing priorities with the `Nice` setting in `top` or customizing themes in `btop`, the goal is to maintain system stability and efficiently optimize CPU, RAM, and network usage.
