如果重要,我使用的是Mac OS X,但我相信这适用于操作系统.如果操作系统的答案不同,我也有兴趣了解它.
假设我打开终端窗口,启用一些探测器,然后开始使用DTrace收集数据.
从不同的终端窗口,我可以询问DTrace启用了哪些探针?如果是这样,怎么样?
最佳答案 我在DTrace邮件列表上从Adam Leventhal获得了以下信息.首先,他提供了这个适用于Solaris的脚本
#!/usr/sbin/dtrace -s
#pragma D option quiet
int i;
tick-100
/i >= `dtrace_nprobes/
{
exit(0);
}
tick-100
{ printf("%4d %10s %20s %20s %10s %s\n", i,
stringof(`dtrace_probes[i]->dtpr_provider->dtpv_name),
stringof(`dtrace_probes[i]->dtpr_mod),
stringof(`dtrace_probes[i]->dtpr_func),
stringof(`dtrace_probes[i]->dtpr_name),
`dtrace_probes[i]->dtpr_ecb != NULL ? "enabled" : "disabled");
i++
}
遗憾的是,由于存在错误,Mac OS X上无法使用相同的内核变量.