Introduction
Imagine you want to run a program on your computer, like a game or a calculator. The computer needs a way to manage and keep track of this running program so it can work properly and not get mixed up with other programs.
Think of a process like a chef cooking a recipe in a kitchen. The recipe is the program, but the chef actively following the steps and using ingredients is the process. The kitchen tools and ingredients are the resources the chef uses.
┌───────────────┐
│ Process │
│───────────────│
│ Program Code │
│ Program Counter │
│ Data Memory │
│ Resources │
└──────┬────────┘
│
▼
┌───────────────┐
│ Process State │
│ (Running, │
│ Waiting, │
│ Terminated) │
└──────┬────────┘
│
▼
┌───────────────┐
│ Process Ctrl │
│ Block (PCB) │
│ Stores Info │
└───────────────┘