Friday, May 14, 2021

Proc and Processes

The /proc directory — which provides a text-based way of
interfacing with system settings and processes — looks complicated at first
glance, but it can be incredibly helpful when troubleshooting. Try out these
tips for looking at processes:

ls /proc will show you a long list of directories. These are your
processes, one directory per process ID. Have a look at your process list
(using ps -A), and pick a process. The one I’ll look at is

1787 ?        00:00:00 thunderbird

so directory /proc/1787.

Look at the contents of that directory. The file cmdline tells
you what command was used to launch this process. This can be useful if the
problem you have is launch-related. You’ll be warned that this might be
binary, but it’s mostly text and easy to read. environ, similarly,
gives you the command environment, which is also useful for troubleshooting
(try starting the process on another machine and comparing the files); and the

fd directory allows you to check what the process is accessing.

maps shows the memory maps to executables and library files.
For each executable or library, the memory address is given,
together with the permissions (r/w/x, s(hared), and p(rivate – copy on
write)), the offset into the file, and the device and device inode.
For my Thunderbird process, it starts like this:

08048000-080e9000 r-xp 00000000 03:01 2354694    /bin/bash
080e9000-080ef000 rw-p 000a0000 03:01 2354694    /bin/bash
080ef000-08183000 rw-p 080ef000 00:00 0          [heap]

Lastly, for this brief overview: stat and status (the more
human-readable file) both give status information. This is
the full list that ps pulls selected information from.

For further information, the proc manpage is incredibly
comprehensive and well worth a look.

This article was first published on

Similar articles

Latest Articles

Database-Tuning Platform Launches and...

PITTSBURGH — A team out of Carnegie Mellon University is launching its automatic database-tuning product today with the help of $2.5 million in funding.   OtterTune,...

Top 10 Professional Services...

Professional services automation (PSA) software aims to offer service-based companies most of the software they will need to run their businesses in one package....

What is Data Aggregation?

Data aggregation is the process where raw data is gathered and presented in a summarized format for statistical analysis. The data may be gathered...

Dell APEX: Our...

One of the missteps IBM made last century was collapsing their sales model, which was services based, to generate a short-term revenue spike. Up...