这里回顾第10章,本章介绍了多处理器调度(高级)。

书籍介绍:

学习资料:

第10 章 多处理器调度(高级)

内容回顾

关键概念

  • 缓存
    • 很小但很快的存储设备,通常拥有内存中最热的数据的备份。
    • 基于局部性的概念,分为时间局部性和空间局部性。
  • 内存
    • 很大且拥有所有的数据,但访问速度较慢。
  • 对共享数据访问需要考虑同步问题
    • 解决方法是使用锁
  • 缓存亲和度(cache affinity)
    • 由于缓存的原因,应该尽可能将相同的进程保持在同一个CPU上
  • 单队列多处理器调度(Single Queue Multiprocessor Scheduling,SQMS)
    • 将所有需要调度的工作放入一个单独的队列中
    • 缺点
      • 缺乏可扩展性
      • 缓存亲和性上存在问题
  • 多队列多处理器调度(Multi-Queue Multiprocessor Scheduling,MQMS)
    • 包含多个调度队列,每个队列可以使用不同的调度规则,每个CPU调度直接相互独立
    • 缺点
      • 可能会出现负载不均,即某个CPU对应的调度队里中工作全完成后,该CPU就没有工作
      • 解决方式是使用工作的跨CPU迁移(migration)