23. 处理器调度

背景回顾:现代处理器为我们提供了分页机制,允许处理器配置一个近乎 “任意” 的 VR 眼镜,将虚拟页号映射到一个任意的物理页号——这个机制允许我们在进程之间共享页面,甚至实现页面的按需调度和 copy-on-write。在 “ThreadOS” 的基础上,我们只需为每个线程分配属于它的地址空间 (页表),就得到了进程。

本讲内容:在上下文切换机制的基础上,我们需要怎样的策略,能将 “处理器” 这一重要资源更好地分配给进程?

23.1 机制:上下文切换

23.2 处理器调度:原理

23.3 处理器调度:实践 🌶️

Take-away Messages

计算机系统设计中的一个重要主题就是机制和策略的分离——它帮助我们分离计算机系统中的复杂性,使我们能在一个干净的概念体系上处理复杂的系统。我们看到许多这样的例子:分页机制和 demand-paging 策略;上下文切换机制和调度策略;安全机制和访问控制策略等等。通过将机制和策略分离,我们可以在不改变底层机制的情况下调整策略,从而更灵活地适应不同的需求和环境。这种分离还使得系统的设计和实现更加模块化和可维护,便于调试和优化。

课后习题/编程作业

1. 阅读材料

📚阅读材料

教科书 Operating Systems: Three Easy Pieces

  • 第 7 章 - CPU Scheduling
  • 第 8 章 - Multi-level Feedback
  • 第 9 章 - Lottery Scheduling
  • 第 10 章 - Multi-CPU Scheduling
  • 第 11 章 - Summary