組み込みLinuxで現在実行されているスケジューリングポリシーをどのように確認できますか?

組み込みLinuxで現在実行されているスケジューリングポリシーをどのように確認できますか?

カスタム組み込みLinuxバージョン3.14を実行しているARMベースの組み込みターゲットをテストしています。

私のLinuxが実行時にどのスケジューリングポリシーを使用しているかを把握する方法はありますか?

/proc/sysTargetで同様のアイテムを見ました。しかし、CFSかどうかはわかりません。

 sched_child_runs_first
 sched_domain/
 sched_latency_ns
 sched_migration_cost_ns
 sched_min_granularity_ns
 sched_nr_migrate
 sched_rr_timeslice_ms
 sched_rt_period_us
 sched_rt_runtime_us
 sched_shares_window_ns
 sched_time_avg_ms
 sched_tunable_scaling
 sched_wakeup_granularity_ns

誰でも助けることができますか?

答え1

私はあなたのシステムがCFS CPUスケジューラを使用しているかどうかを知りたいと思います。スケジューリングポリシーは、CFSまたは他のスケジューラによって使用されるポリシーです。私のUbuntu 16.04システムには/proc/sched_debugがあります。おそらく、以下からいくつかのヒントを得ることができます。

cat /proc/sched_debug

システムが CFS スケジューラーを使用する場合、出力には次のような内容を含める必要があります。

cfs_rq[CORE_NUMBER]: ...

関連情報