Linux 内核调度器源码分析 - 初始化

发布时间:2022-12-01 10:30

导语

上篇系列文 混部之殇-论云原生资源隔离技术之CPU隔离(一) 介绍了云原生混部场景中CPU资源隔离核心技术:内核调度器,本系列文章《Linux内核调度器源码分析》将从源码的角度剖析内核调度的具体原理和实现,我们将以 Linux kernel 5.4 版本(TencentOS Server3 默认内核版本)为对象,从调度器子系统的初始化代码开始,分析 Linux 内核调度器的设计与实现。

调度器(Scheduler)子系统是内核的核心子系统之一,负责系统内 CPU 资源的合理分配,需要能处理纷繁复杂的不同类型任务的调度需求,还需要能处理各种复杂的并发竞争环境,同时还需要兼顾整体吞吐性能和实时性要求(本身是一对矛盾体),其设计与实现都极具挑战。

为了能够理解 Linux 调度器的设计与实现,我们将以 Linux kernel 5.4 版本(TencentOS Server3 默认内核版本)为对象,从调度器子系统的初始化代码开始,分析 Linux 内核调度器的设计与实现。

本(系列)文通过分析 Linux 调度器(主要针对 CFS)的设计与实现,希望能够让读者了解:

  • 调度器的基本概念
  • 调度器的初始化(包括调度域相关的种种)
  • 进程的创建、执行与销毁
  • 进程切换原理与实现
  • CFS 进程调度策略(单核)
  • 如何在全局系统的调度上保证 CPU 资源的合理使用
  • 如何平衡 CPU 缓存热度与 CPU 负载之间的关系
  • 很 special 的调度器 features 分析

ItVuer - 免责声明 - 关于我们 - 联系我们

本网站信息来源于互联网,如有侵权请联系:561261067@qq.com

桂ICP备16001015号