"top"と"ps"コマンドは異なる優先順位の値を表示します。なぜですか?

top表示優先順位は20ほとんどのプロセスには以下が含まれます(例:Firefoxゴミ箱)。

また、ps -o pid,lwp,pri,nice,start,stat,bsdtime,cmd,comm -C firefox-bin表示される内容は次のとおりです。

  PID   LWP PRI  NI  STARTED STAT   TIME CMD                         COMMAND
 9798  9798  19   0 14:03:47 Sl     2:17 /opt/firefox/firefox        firefox-bin

topとpsはどちらも古いコマンドなので、これはバグではないようです。なぜ違いがありますか?

ベストアンサー1

Linuxの優先順位の範囲は0から139です。次の手順でプロセスの実際の優先順位を確認できます。予定ファイル処理中/プロセス/サブディレクトリ。たとえば、私のシステムのFirefoxプロセスIDは84163です。だから私が走ったらgrep ^prio /proc/84163/sched,優先順位が120と出てきますね。これはLinuxのデフォルトの優先順位です。リアルタイム優先順位の範囲は0〜99で、ユーザーは100〜139まで優先順位を割り当てることができます。しかし、メモFirefoxの優先順位は80です。トップ20代と言って、なぜ3つがすべて違うのですか? ~によるとこのページ、psは-40から99の優先順位を提供します。したがって、実際の優先順位を得るには、ここに40を加えてください。 topコマンドは、各優先順位レベルで100を減算します。したがって、最上位の実際の優先順位を取得するには、ここに100を加えてください。

おすすめ記事