カーネルタイムスライスIDの取得

カーネルタイムスライスIDの取得

背景:私のカーネルドライバでエラーを追跡するために使用される時間測定に違いがあることがわかりました。 1回の試行中にドライバが停止し、次の時間まで一時停止する必要があるため、これが可能であると確信しています。
これでこれを追跡できるかどうか疑問に思います。

私の質問は、実際の質問よりも一般的なアイデアに近いです。
現在のタイムスライスIDなどを取得できますか?

以下は、デバッグにこのコードを使用する方法の小さな擬似コードの例です。

long starttime = get_time();  // Just a function to get the time
long timeslice_id = get_scheduler_timeslice();  // This is what I am looking for

do_lengthy_things();

print("Code took %d ms to run.", get_time() - starttime);

if (get_scheduler_timeslice() != timeslice_id)
  print("There was a task switch while running this code, don't wonder about the time.");

ベストアンサー1

おすすめ記事