Introducing processes
A process represents the running instance of a program. In general, a program is a combination of instructions and data, compiled as an executable unit. When a program runs, a process is created. In other words, a process is simply a program in action. Processes execute specific tasks, and sometimes, they are also referred to as jobs (or tasks).
There are many ways to create or start a process. In Linux, every command starts a process. A command could be a user-initiated task in a Terminal session, a script, or a program (executable) that's invoked manually or automatically.
Usually, the way a process is created and interacts with the system (or user) determines its process type. Let's have a closer look at the different types of processes in Linux.
Understanding process types
At a high level, there are two major types of processes in Linux:
- Foreground (interactive)
- Background (non-interactive or automated)
Interactive...