Linux Fundamentals

Processes & Signals

Understand process state, the PID tree, and how signals control running programs.

30 min read beginner 3 objectives

Status

Not started

What you will learn

  • List and filter processes
  • Send signals to control processes
  • Read process state

New to this? Start here

The basics, in plain English

When you run any program, the computer creates a live, running copy of it. That running copy is called a process. This lesson is about seeing what is running and telling those programs to stop, restart, or reload.

Program
A file on disk that contains instructions, sitting still until you run it.
Process
A program that is actually running right now, using memory and the CPU.
PID
A "process ID" is a unique number the system gives each running process so you can refer to it.
Signal
A short message you send to a process, such as "please stop" or "reload your settings".
kill
A command that sends a signal to a process. Despite the name, it can just ask politely, not only force-quit.
ps / top
Commands that show you the list of processes currently running, like a Task Manager.
01

Process model

A process is a running program with a PID. ps and top show what is running; pstree shows the parent/child tree.

02

Signals

kill sends signals, not just death. SIGTERM (15) asks nicely, SIGKILL (9) forces it, SIGHUP (1) often reloads config.

Try it yourself

bash
$ps aux | grep nginx
List running processes and filter for nginx to find its PID.
$kill -TERM 4821
Politely ask process 4821 to shut down (graceful stop).
$kill -HUP $(pgrep nginx)
Send a reload signal so nginx re-reads its config without restarting.
$top -o %MEM
Watch live processes sorted by memory usage.
↳ lines explain what each command does — only the commands get copied

Finished this topic?

Mark it done to earn 100 XP and keep your streak alive.