fbpx

How to List Running Processes in Linux and Manage them 

Updated on May 14th, 2022
by Asma Khalid

List processes Linux - Developers utilize a variety of applications and run commands in the terminal on a daily basis.
On your Linux system, each application you use or command you perform produces a process or task. To guarantee optimal system performance, you will need to control processes as a system administrator.

Multitasking is one of the most appealing features of the Linux operating system, as well as modern computers in general. As a result, numerous programs can run simultaneously.

What are processes in Linux?

When you perform a command or open an application in Linux, it starts a process. Applications, on the other hand, generate and execute several processes for various tasks, whereas commands only create one.

When you launch your Visual Studio Code editor, for example, you start a process that will only cease (or die) when you exit or terminate the Visual Studio Code application.

Similarly, when you run a command in the terminal (such as curl ifconfig.me), it starts a process that will only terminate when the command completes or is terminated.

Each new process starts as a foreground process by default. This implies that it must be completed before a new process may begin. Processes running in the background allow you to work on other things at the same time.

List running processes in Linux

Use one of the three commands to list processes in Linux:

  • ps – displays a list of all processes; it can also be used with options to get a more detailed output.
  • top – displays a live list of currently active processes and allows you to interact with them by killing, stopping, changing priority, and so on.
  • htop – instantaneous results on a user-friendly output with the opportunity to engage with the process

Utilizing ps as a command

The ps command (process statuses) creates a snapshot of all currently active processes. As a result, unlike the Windows task manager, the outcomes are predictable.

The syntax for the ps command is as follows:

ps [options]

The following are some of the most commonly used ps command options:

  • a: Make a list of all processes that are causing problems for all users.
  • -A, -e: Display a list of all the processes on the system.
  • -a: List all processes, excluding session leaders (those whose process ID is the same as the session * ID) and those not associated with a terminal.
  • -d: Except for session leaders, list all processes.
  • –deselect, - N: Remove any processes that do not meet a user-defined condition from the list.
  • f: Uses ASCII art to display the process hierarchy.
  • -j: Shows the output in jobs format.
  • T: Make a list of all the processes that are connected to this terminal.
  • r: Only list processes that are currently active.
  • u: Increase the size of the output to include more information, such as CPU and memory use.
  • -u: Define a user for whom you want to list processes.
  • x: Processes without a TTY are included.

Running the ps command without any options produces an output similar to

The following categories are included in the default output:

  • PID: Process Identification Number
  • TTY: The terminal on which the process is operating.
  • TIME: The total amount of time spent on the computer (CPU usage total amount).
  • CMD: The name of the command that started the process

Using the a, u, and x options together produces a more detailed output

ps aux

The extended output now includes the following new categories:

  • USER: This is the name of the person who is executing the process.
  • %CPU: The proportion of time that the CPU is in use.
  • %MEM: The proportion of memory used.
  • VSZ: The process’s total virtual memory usage in kilobytes.
  • RSS: “stands for Resident Set Size”, which refers to the amount of RAM used by a process.
  • STAT: The current state of the process.
  • START: The time when the process began.

To show the currently executing processes in a hierarchical order.

ps -axjf

Using the top command in Linux, you can get a list of currently running processes

The top command provides a list of currently active processes in decreasing CPU consumption order. This means that the processes that use the most resources are at the top of the list:

top

With the default refresh rate of three seconds, the output of the top command refreshes in real time. The following categories appear in the output of the top command:

  • PID (Process Identification Number): This is a number that identifies a
  • USER: This is the name of the person who is executing the process.
  • PR: The process’s scheduling priority.
  • NI: The process’s nice value, with lower values signifying higher importance.
  • VIRT: The amount of virtual memory used by the process.
  • RES: The amount of resident (physical) memory that the process uses.
  • SHR: The process’s total shared memory use.
  • R (running) or S (sleeping): The status of the process
  • %CPU: The percentage of time that the CPU is in use.
  • %MEM: The memory usage percentage
  • TIME+: The total amount of CPU time used.
  • COMMAND: The command that initiated the procedure.

Use the following options to interact with the top command or modify the output format while it is running:

top [option]

  • c: Show the process path in its entirety.
  • d: Set the output refresh rate to a custom value (in seconds).
  • h: Bring up the help menu.
  • k: Provide the PID to kill a process.
  • M: Sort the list by the amount of memory used.
  • N: Sort the list according to the PID.
  • r: Provide the PID to change the nice value (priority) of a process.
  • z: Highlight running processes by changing the output color.
  • q: Exit the command prompt.

Using the htop command in Linux, you may see what processes are currently running.

The htop command produces the same results as the top command, but in a more user-friendly and understandable manner.

Because this command isn’t included in most Linux distributions, you’ll need to install it yourself:

sudo apt install htop

Using the

htop

command provides the following output:

List Processes Linux

To interact with the htop command, press the following keys:

Scroll the process list vertically and horizontally using the directional keys.

  • F1: Displays the help menu.
  • F2: Open the htop command setup
  • F3: Type the name of a process to find it.
  • F4: Sort the list of processes by name.
  • F5: Select whether the process hierarchy is displayed as a sorted list or a tree.
  • F6: Sort processes by columns
  • F7: Lower a process’s nice value (raise its priority).
  • F8: Lower the process’s nice value (lower its priority).
  • F9: Terminate the currently selected process.
  • F10: Closes the command prompt.

Conclusion

Knowing how to list all running processes in your Linux operating system is critical. When you need to manage processes, this expertise will come in handy.
To customize the output and command behavior, use the available command options.

Leave a Reply

Your email address will not be published.

chevron-down