100 likes | 243 Views
Thread Scheduling in Linux . History Kernel 2.0 Kernel 2.2 Kernel 2.4 Kernel 2.5. Quick Scheduler Theory Walkthrough. Components Timers Context switching Algorithms How compilers affect all. Patches ! Patches ! Patches !. Preemption patch – Robert Love O(1) patch – Ingo Molnar.
E N D
Thread Scheduling in Linux • History • Kernel 2.0 • Kernel 2.2 • Kernel 2.4 • Kernel 2.5
Quick Scheduler Theory Walkthrough • Components • Timers • Context switching • Algorithms • How compilers affect all ...
Patches ! Patches ! Patches ! • Preemption patch – Robert Love • O(1) patch – Ingo Molnar
Threads – How the user sees them • POSIX threads • Kernel threads vs. User threads • So what do we have – kernel threads or user threads ? • NPTL or NGTL
Design Drivers • User responsiveness • Fair-share scheduling • Good SMP scheduling
The Linux 2.5 scheduler • Motivations • Data Structures • Algorithms • Control Flow • Improvements
Kernel Preemption • Advantages • How to achieve preemption
Ingo Molnar's O(1) patch • What is O(1) ? • What's not O(1) in 2.4 • How O(1) is achieve • Data Structures • Algorithms
The Big Picture • The scheduler in the big scheme of things • How other components of the kernel fit in • Life, the universe, and everything !