TGViewer
Admin Guides | Сисадмин Admin Guides | Сисадмин @admguides · 12K subscribers
Post #3154 1.19K
sched_ext: разные scheduler policies для разных групп

Обычно scheduler в Linux один для всей системы: задачи попадают в общую модель планирования, а kernel решает, когда и на каком CPU их запускать.

sched_ext позволяет вынести часть этой логики в BPF-программу. А новая модель sub-schedulers позволяет применять отдельную policy только к выбранной группе задач.
Упрощённо:

Linux scheduler
│
├── обычные процессы → CFS / fair scheduling
│
└── выбранная группа → sched_ext
│
└── своя BPF policy


Например, можно представить систему с двумя группами:

cgroup A → обычный scheduler
cgroup B → sched_ext policy


При этом sched_ext не заменяет scheduler ядра целиком. Он получает управление только там, где задача попала под соответствующую policy, а остальные задачи продолжают обслуживаться обычным scheduler path.
Проверить доступность механизма можно через:

ls /sys/kernel/sched_ext


А состояние scheduler’а:

cat /sys/kernel/sched_ext/state


Главная сложность здесь в границе ответственности. BPF-policy должна решать, какую задачу и когда запускать, но CPU, migration, interrupts и остальные базовые механизмы ядра никуда не исчезают.

То есть получается не:
один BPF scheduler вместо Linux scheduler
а скорее:

              kernel scheduler
│
┌───────────┴───────────┐
↓ ↓
обычные задачи sched_ext tasks
│
BPF scheduling policy
  • ❤ 5
  • 🔥 3
More from @admguides
  1. Oct 7, 2026На Stepik вышла программа «DevOps с нуля: от Linux до Kubernetes» Это комплексная программ…
  2. Oct 7, 2026failfs: файловая система, где всё запрещено В Linux появилась необычная внутренняя файлова…
  3. Oct 7, 2026💬 Вопрос на собеседовании для сисадмина Давайте разберем один из частых вопросов, который…
  4. Oct 6, 2026Process Builder: зачем Linux хочет уйти от fork()+exec() Классическая схема запуска процес…
  5. Oct 6, 2026Post #3160
  6. Oct 5, 2026💬 Вопрос на собеседовании для сисадмина Давайте разберем один из частых вопросов, который…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →