Solaris 动态跟踪指南

参数

profile 探测器的参数如下所示:

arg0

触发探测器时内核中的程序计数器 (program counter, PC),如果在触发探测器时内核中未执行当前进程,则为 0 

arg1

触发探测器时用户级进程中的程序计数器,如果在触发探测器时内核中正在执行当前进程,则为 0 

从说明可以判断出,如果 arg0 为非零值,则 arg1 为零;如果 arg0 为零,则 arg1 为非零值。因此,可以使用 arg0arg1 来区分用户级和内核级,如以下简单示例所示:

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