eolas/Linux/Monitoring_processes_and_resources.md
2022-08-28 11:00:04 +01:00

1.6 KiB

categories tags
Linux
sytems-programming

Monitoring processes and resources

Processor time and memory usage: top, htop etc

We can use ps to list the currently running processes but it does not provide much information about the resource metrics or how the process changes over time. We can use top to get more information.

top provides an interactive interface for the information that ps displays. It updates in real time and shows the most active processes based on the CPU time that they are utilising. You can also order by memory usage.

Here I have pressed u to show only the processes associated with my user:

Main commands

Command Action
-u Show processes by selected user
M Sort by memory usage
P Sort by cumulative CPU usage
? View key and explanation

Files being used by active processes: lsof

lsof stands for list open files. It lists opened files and the processes using them. Without modifiers it outputs a huge amount of data. The best way to use it is to execute it against a specific PID. For example the below output gives me some useful info about which files VS Code is using:

System calls: strace

A system call is when a process requests a service from the kernel, for instance an I/O operation to memory. We can trace these system calls with strace.