This document summarizes key concepts from Chapter 6 of the textbook "Operating System Concepts - 9th Edition" by Silberschatz, Galvin and Gagne. It discusses CPU scheduling, which is the basis for multiprogrammed operating systems. Various CPU scheduling algorithms are described such as first-come first-served, shortest job first, priority scheduling and round robin. Evaluation criteria for selecting a scheduling algorithm like CPU utilization, throughput, turnaround time and waiting time are also covered. The chapter examines scheduling in multi-processor and real-time systems as well as thread scheduling approaches.