第16章 カーネル
以下の章では、カーネルに関する RHEL 9 と RHEL 10 の間の最も重要な変更点を説明します。
16.1. カーネルの主な変更点 リンクのコピーリンクがクリップボードにコピーされました!
カスタムスケジューラーを作成するための sched_ext scheduler
RHEL 10 では、sched_ext
を使用して、Extended Berkeley Packet Filter (eBPF) でカスタムのプロセススケジューリングコードを実行時に作成できます。sched_ext
スケジューラーを使用すると、標準のカーネルスケジューラーを独自のスケジューリングロジックに置き換えて、プロセスの優先度設定、リソースの割り当て、および実行動作を制御できます。
カスタムのスケジューラーは Red Hat のサポート対象外であることに注意してください。
CFS が EEVDF スケジューラーに置き換えられる
Completely Fair Scheduler (CFS) は、新しいスケジューラーである Enhanced Earliest Deadline First (EEVDF) に置き換えられました。これには次の変更が含まれます。
-
sched_min_granularity
がsched_base_slice
になりました。使用される単位は同じです。 sched_wakeup_granularity
は EEVDF では使用されないため、削除されました。- sched_base_slice
- タスクの実行を延期できる最小時間を定義します。
- sched_wakeup_granularity
- CPU 上の全タスクのベースライン優先度を (CPU の割合として) 設定します。
CFS と EEVDF は、ほとんどの場合、ワークロードの面で同等の結果を提供します。ただし、各タスク選択のロジックが異なるため、パフォーマンスに若干の差が生じる可能性があります。