Glossary

Process

A running program, with its own ID, memory and environment.

A process is one running instance of a program. Every process has a numeric PID, an owner, a working directory, an environment, and three open streams. Processes form a tree: each is started by a parent and inherits a copy of the parent's environment and working directory at launch — never the other way round.

That one-way inheritance explains a surprising amount: why cd must be built into the shell, why a script cannot change the directory of the terminal that ran it, and why an exported variable set inside a script vanishes when it ends.

See it in practice

$ ps -o pid,ppid,user,cmd -p $$

Shows your own shell process with its parent. $$ expands to the current shell’s PID — handy inside scripts.

Where you'll meet it

ps

See what is running, find a process ID, and combine with grep to hunt down a program.

kill

Terminate processes politely or forcibly — and understand what -9 really does.

PID (Process ID)

The number that identifies a running process.

Environment variable

A named value processes inherit when they start.

Learn these concepts by typing them: the interactive course builds them up lesson by lesson in a real simulated shell.