A process is the execution of a command by the Linux kernel. The shell that starts when you log in is a process, like any other. When you specify the name of a utility as a command, you initiate a process. When you run a shell script, another shell process is started, and additional processes are created for each command in the script. Depending on how you invoke the shell script, the script is run either by the current shell or, more typically, by a subshell (child) of the current shell. Running a shell builtin, such as cd, does not start a new process.

Process Structure

fork() system call

Like the file structure, the process structure is hierarchical, with parents, children, and a root. A parent process forks (or spawns) a child process, ...

Get A Practical Guide to Linux Commands, Editors, and Shell Programming, Fourth Edition now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.