# 2. Linux 调度器

- [2.1 任务](/linux-sched/task.md)
- [2.2 核心概念](/linux-sched/concepts.md)
- [2.2.1 核心概念 - 调度实体](/linux-sched/concepts/sched-entity.md): 简要介绍调度器内部的调度单元，即Sched Entity
- [2.2.2 核心概念 - 调度类](/linux-sched/concepts/sched-class.md): 简要介绍Sched Class
- [2.2.3 核心概念 - 调度策略](/linux-sched/concepts/sched-policy.md): 简要介绍Sched Policy
- [2.2.4 核心概念 - 运行队列](/linux-sched/concepts/runqueue.md): 简要介绍runqueue
- [2.2.5 核心概念 - 优先级](/linux-sched/concepts/priority.md): 简要介绍任务的优先级，即Priority
- [2.3 演进历史](/linux-sched/history.md)
- [2.3.1 O（n）调度器 - 调度逻辑](/linux-sched/history/o-n-logic.md)
- [2.3.2 O（n）调度器 - 时间分配](/linux-sched/history/o-n-timing.md)
- [2.3.3 O（n）调度器 - 调度时机](/linux-sched/history/o-n-tick.md)
- [2.3.4 O（1）调度器 - 简介](/linux-sched/history/o-1-intro.md)
- [2.3.5 O（1）调度器 - 调度逻辑](/linux-sched/history/o-1-logic.md)
- [2.3.6 O（1）调度器 - 时间分配](/linux-sched/history/o-1-timing.md)
- [2.3.7 RSDL](/linux-sched/history/rsdl.md)
- [2.3.8 CFS](/linux-sched/history/cfs.md)
- [2.4 DL调度器](/linux-sched/dl-sched.md)
- [2.4.1 DL调度器 - 调度算法](/linux-sched/dl-sched/algorithm.md)
- [2.4.2 DL调度器 -核心代码](/linux-sched/dl-sched/logic.md)
- [2.5 RT调度器](/linux-sched/rt-sched.md)
- [2.6 CFS](/linux-sched/cfs-sched.md)
- [2.6.1 公平性](/linux-sched/cfs-sched/fairness.md)
- [2.6.2 调度逻辑](/linux-sched/cfs-sched/logic.md)
- [2.6.2.1 调度逻辑 - 数据结构](/linux-sched/cfs-sched/logic-data-structure.md)
- [2.6.2.2 调度逻辑 - vruntime](/linux-sched/cfs-sched/logic-vruntime.md)
- [2.6.2.3 调度逻辑 - 调度周期](/linux-sched/cfs-sched/logic-period.md)
- [2.6.2.4 调度逻辑 - 调度节拍](/linux-sched/cfs-sched/logic-tick.md)
- [2.6.2.5 调度逻辑 - 任务抢占](/linux-sched/cfs-sched/logic-preempt.md)
- [2.6.2.6 调度逻辑 - 调度时机](/linux-sched/cfs-sched/logic-time.md)
- [2.6.3 组调度](/linux-sched/cfs-sched/group.md)
- [2.6.3.1 组调度 - 数据结构](/linux-sched/cfs-sched/group-data-structure.md)
- [2.6.3.2 组调度 - 调度逻辑](/linux-sched/cfs-sched/group-logic.md)
- [2.6.3.3 组调度 - 时间分配](/linux-sched/cfs-sched/group-timeshare.md)
- [2.6.3.4 组调度 - 任务组权重](/linux-sched/cfs-sched/group-weight.md)
- [2.6.4 带宽控制](/linux-sched/cfs-sched/bandwidth.md)
- [2.6.4.1 带宽控制 - 数据结构](/linux-sched/cfs-sched/bandwidth-data-structure.md)
- [2.6.4.2 带宽控制 - 带宽时间](/linux-sched/cfs-sched/bandwidth-time.md)
- [2.6.4.3 带宽控制 - 挂起与解挂](/linux-sched/cfs-sched/bandwidth-throttle.md)
- [2.6.4.3 带宽控制 - 定时器](/linux-sched/cfs-sched/bandwidth-timer.md)
- [2.7 负载追踪](/linux-sched/load-trace.md)
- [2.7.1 负载追踪 - 简介](/linux-sched/load-trace/load-trace-intro.md): 介绍什么是负载追踪，以及什么是PELT（Per-entity Load Tracking）
- [2.7.2 负载追踪 - 数据结构](/linux-sched/load-trace/load-trace-data-structure.md)
- [2.7.3 负载追踪 - 计算负载](/linux-sched/load-trace/load-trace-calc.md)
- [2.7.4 负载追踪 - 更新负载](/linux-sched/load-trace/load-trace-update.md)
- [2.8 负载均衡](/linux-sched/lb.md)
- [2.8.1 简介](/linux-sched/lb/lb-intro.md)
- [2.8.2 CPU的拓扑结构](/linux-sched/lb/lb-cpu-topo.md)
- [2.8.3 数据结构](/linux-sched/lb/lb-data-structure.md)
- [2.8.4 算法思路](/linux-sched/lb/lb-algorithm.md)
- [2.8.5 触发时机](/linux-sched/lb/lb-trigger.md)
- [2.8.6 总结](/linux-sched/lb/lb-summary.md)
