私は大学のプロジェクトで特定のプロセスのプロセススケジュールを追跡、記録、操作する方法を調査しています。複数のアプリケーションをそれぞれ1つのプロセスで起動したいと思います。まず、スケジュールされた実行を追跡して記録したいと思います。ただし、次のステップでは、$n
最初の実行で単一のプロセスを優先するようにスケジュールされた実行を操作したいと思います。
これを達成するための既存の方法(例えば、変更されたsched.h)を知っている人はいますか?
答え1
追跡するには、次のものを使用できます。getcpu
またはsched_getcpu
(アイデアこの問題)、しかしディスパッチ関連の信号がないので、コードから直接追跡するのはやや難しいかもしれません。
別のあまりエレガントな解決策は、/proc/$PID
「ファイル」でこの情報を見つけることです。
CPUアフィニティチェックの位置を制御します。hwloc
、taskset
またはランタイム制御制御:sched_setaffinity