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