プロファイル・プロバイダ
profileプロバイダでは、指定の時間間隔で定期的に起動する割込みに関連するプローブを使用できます。
このようなプローブは、特定の実行ポイントではなく非同期割込みイベントに関連付けられます。 これらのプローブを使用して、特定の観点からシステム状態をサンプリングし、そのサンプルを使用してシステム動作を推測できます。 サンプリング・レートが高い、またはサンプリング時間が長いと、正確な推測が可能になります。 DTrace関数を使用すると、profileプロバイダでシステムの多くの側面をサンプリングできます。 たとえば、現在のスレッドの状態、CPUの状態、現在のマシン命令などの標本をサンプリングできます。
profile-nプローブ
profile-nプローブは、すべてのアクティブなCPUで、割込みレベルが高く、固定間隔で起動します。
nの単位は、1秒当たりの起動率として表される頻度にデフォルト設定されますが、時間間隔または頻度を指定する「表9-10」に示すように、値にオプションのサフィクスを指定することもできます。 次の表では、tick- nプローブで有効な時間の接尾辞について説明します。
表9-10 有効時間サフィクス
| 接尾辞 | 時間の単位 |
|---|---|
|
|
ナノ秒 |
|
|
マイクロ秒 |
|
|
ミリ秒 |
|
|
秒 |
|
|
分 |
|
|
時間 |
|
|
日 |
|
|
ヘルツ(秒当たりのレートとして表される周波数) |
tick-nプローブ
tick-nプローブは一定の間隔で、高い割込みレベルで間隔ごとに1つのCPUのみで起動します。
すべてのCPUで起動するprofile-nプローブとは異なり、tick-nプローブは間隔ごとに1つのCPUのみで起動し、起動するCPUは時間の経過とともに変化する可能性があります。 nの単位は、1秒当たりの起動率として表される頻度にデフォルト設定されますが、「表9-10」に示すようにオプションの時間サフィクスを持つこともできます。これは、時間間隔または頻度のいずれかを指定します。
tick-nプローブには、定期的な出力や定期的なアクションの実行など、いくつかの用途があります。
ノート:
使用可能な最も高い周波数は5000 Hzです(tick-5000)。
profileプローブの引数
次の表では、profileプローブの引数について説明します。
表9-11 profileプローブ引数
| プローブ | arg0 | arg1 |
|---|---|---|
|
|
|
|
|
|
|
|
引数は次のとおりです。
-
pc: カーネル・プログラム・カウンタ -
upc: ユーザー空間プログラム・カウンタ