web-dev-qa-db-ja.com

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

カスタマイズされた組み込みLinuxバージョン3.14で実行されているARMベースの組み込みターゲットをテストしています。

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

いくつかの/proc/sysターゲット上のこれらのようなエントリ。しかし、それが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
sunisiha

システムがCFSCPUスケジューラーを使用しているかどうかを確認したいと思います。スケジューリングポリシーは、CFSまたはその他のスケジューラーが使用するポリシーです。 Ubuntu 16.04ボックスには、/ proc/sched_debugがあります。たぶんあなたはからヒントを得ることができます:

cat /proc/sched_debug

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

cfs_rq[CORE_NUMBER]: ...
1
Hoov