Solaris 動的トレースガイド

引数

profile プローブの引数は、次の表のとおりです。

arg0

プローブが起動したときのカーネル内のプログラムカウンタ (PC)。プローブが起動したとき、カーネル内で現在のプロセスが実行されていなかった場合はゼロになります。 

arg1

プローブが起動したときのユーザーレベルのプログラムカウンタ (PC)。プローブが起動したとき、カーネル内で現在のプロセスが実行されていた場合はゼロになります。 

この説明からわかるように、arg0 がゼロ以外の値の場合 arg1 はゼロ、arg0 がゼロの場合 arg1 はゼロ以外になります。この特性を利用すると、arg0arg1 を使ってユーザーレベルとカーネルレベルを区別できます。以下に例を示します。

profile-1ms
{
	@ticks[arg0 ? "kernel" : "user"] = count();
}