Introduction
Imagine many people waiting in line to use a single computer. The problem is how to share the computer fairly so everyone gets a turn without waiting too long.
Imagine a group of friends sharing a single video game console. Each friend gets to play for a fixed amount of time before passing the controller to the next friend in line. This way, everyone gets a fair chance to play without waiting too long.
┌───────────────┐
│ Process Queue │
└──────┬────────┘
│
↓
┌───────────────┐ ┌───────────────┐ ┌───────────────┐
│ Process 1 │─────▶│ Process 2 │─────▶│ Process 3 │
│ (runs for │ │ (runs for │ │ (runs for │
│ time quantum)│ │ time quantum)│ │ time quantum)│
└──────┬────────┘ └──────┬────────┘ └──────┬────────┘
│ │ │
└─────────────────────┴─────────────────────┘
Circular Queue
[Context Switch after each time quantum]