This document discusses different CPU scheduling algorithms and their criteria for evaluation. It describes that a good scheduling algorithm should maximize CPU utilization and throughput while minimizing waiting time, response time, and turnaround time. Common algorithms mentioned are First Come First Served (FCFS), Shortest Job First (SJF), Priority Scheduling, and Round Robin. Gantt charts are used to visually represent the scheduling of different processes over time on the CPU. Examples are provided to demonstrate how each algorithm works.