大量の情報を処理できます/proc/PID/stat
。このプロセスが使用するCPU電力の割合を確認したいと思います。これには多くの変数(utime、stime、cuttime、cstime、gtime、cgtime)がありますが、すべて時間がかかります。 jiffyの問題は、CPUの現在の速度によって異なります。ただし、IPS(1秒あたりのコマンド数)は、コマンドセットと実行しているプログラムによって異なりますが、これはより正確になる可能性があります。
この情報を組み込みシステムで活用して、これらの機能を正確に満たすCPUを選択したいと思います。これにより、巨大なシステムに多くのお金を費やす必要がなくなります。
以下はstatファイルの内容です(2.6.30-rc7ベース)。
フィールド内容 PIDプロセス番号 実行可能ファイルのtcommファイル名 状態状態(Rは実行中、Sは省電力中、Dは省電力中) 無限に待って、Zはゾンビ、Tは追跡または停止します) 親プロセスのppidプロセスID pgrp プロセス pgrp サイドセッションID tty_nr プロセスで使用される tty tty_pgrp ttyのpgrp フラグタスクフラグ min_flt マイナーな欠陥の数 cmin_flt 子の小さなエラー数 maj_flt 主な欠陥数 cmaj_flt 子の主な欠陥数 utime ユーザーモード jiffies stime カーネルモード jiffies 子供と一緒にかわいいユーザーモード cstime カーネルモード jiffies とサブプロセス 優先順位 かなりまともなレベル num_threads スレッド数 it_real_value(古い、常に0) start_time は、システムの起動後にプロセスが開始される時間です。 vsize仮想メモリサイズ RSS常駐セットメモリサイズ rsslim現在のRSS制限(バイト) start_code アドレスの上のプログラムテキストを実行できます。 end_code プログラムテキストが実行できるアドレス start_stack スタックの開始アドレス esp ESPの現在価値 eip EIP 現在値 処理する信号の保留中のビットマップ 信号をブロックするためのブロックビットマップ 無視された信号のビットマップ署名 sigcatchは信号のビットマップをキャプチャします。 プロセスが休止中のwchanアドレス 0(座席表示者) 0(座席表示者) exit_signal終了時に親スレッドに送信される信号。 task_cpuジョブがスケジュールされたCPU rt_priorityリアルタイム優先順位 ポリシースケジューリング戦略(man sched_setscheduler) blkio_ticksブロックIOを待つのにかかる時間 gtime ジョブのゲスト時間 (jiffies) cgtimeゲスト作業時間子供の作業時間
答え1
jiffyはCPU速度に直接依存しません。カーネルで異なる時間間隔を計算するために使用される期間。 jiffyの長さはカーネルコンパイル時に選択されます。これに関する追加情報:男7番
jiffiesの主な用途の1つはプロセススケジューリングです。フラッシュは、スケジューラが他のプロセスを実行するためにプロセスのスケジュールを変更し、交換せずにプロセスを実行できるようにする期間です。
遅いプロセッサの場合は、1秒あたり100ジップで十分です。しかしながら、最新のプロセッサのコアは、毎秒より速い速度で構成されることが多い。