What is a Process in Linux ?

April 02, 2012
A process is a fundamental part of any operating system - irrespective of whether they are proprietary or Free. And all Operating systems usually have a lot of processes running at any given time. This begs the question, what exactly is a process ?

A process is essentially a container, bundling a running application, its environment variables, the state of the application's input and output, and the state of the process, including its priority and accumulated resource usage.

In short, every single application that you run on your machine will have its own unique process allocated to it for the duration of the time it runs.

In Linux, each of that unique process has a parent process from which it is forked (cloned, spawned) initially. The very first process that is created by Linux when you turn on the machine is the init process.

Process ID of the init process is always 1.

All other processes in Linux are ultimately descended from init.

To check the process ID of init, run the following command.

$ ps -e |grep init

Read the following article written by Martin Streicher that explains a process in much more detail. Even though the article describes processes in Unix, what is written there is equally applicable to Linux as well.