私はすべての主要なプロセスを監視したい、そしてそれらをLinuxを使ってどのようにスケジュールするかをRaspberryPiでマルチプロセスシステムを開発しようとしています。それは、スケジューラの状態、開始時刻、リリース時刻などを取得することです。私は '/ proc'フォルダにこのような情報を見つけようとしていますが、今までのところ本当に便利なものは何も見つかりませんでした。例えばLinuxでプロセスがリアルタイムでどのようにスケジュールされているかを監視することはできますか?
あなたは/ procの/ PID /タスクに行けば、/あなたが見ることができるのpid:
se.exec_start
se.vruntime
se.sum_exec_runtime
se.statistics.wait_start
se.statistics.sleep_start
se.statistics.block_start
se.statistics.sleep_max
se.statistics.block_max
se.statistics.iowait_sum
se.statistics.wakeups
などを。さて、これは私が何かをしているように見えますが、十分にはっきりしていません。 プロセスがコアでどのようにスケジュールされているかを見たいだけです。すなわちProcess1が0.30でリリースされ、Process2が0.70(システムタイマ値)で開始されました。
'/ proc'などのカーネルフォルダを監視することで可能ですか? Linux用の別のトレースツールやスケジューラツールを使用してこれを判断する方法はありますか?
ご指導いただきありがとうございます。 私が提供する必要があるものが他にあるかどうか教えてください。
ありがとうございます。すべてのタスクのためにCPUの完全な一回の反復を行い使用してkernelshark、
私も他のプロセスのために、正確に知りたい、:
EDIT。
hmm返信が遅れました。私は今日これを試し、あなたに知らせるでしょう。 – mozcelikors
@mozcelikorsでは、アプリケーションから自動的にスケジューリングを監視したいのですか、手動モードで何度かスケジューリングを調べるためのツールが必要ですか? – osgx
私のための調査の仕事。あなたの提案は、私が正確に望むもののように思える。私の懸念事項について聞かせてください:perf sched mapが実際に詳細を視覚化するのを助けますが、これらのプロセスのリリース、開始、終了時刻を得ることができますか(並列コンピューティング用語で)また、何回か調査する必要がありますか?私は1つの象徴的表現がプロセスの考えを与えるべきであると仮定したいと思う。 – mozcelikors