4
如果有問題,我使用的是Mac OS X,但我相信這將適用於各種操作系統。如果每個操作系統的答案不同,我也會對此有所瞭解。我可以問dtrace啓用了哪些探針?
假設我打開一個終端窗口,啓用一些探測器,並開始使用DTrace收集數據。
從另一個終端窗口,我可以問DTrace什麼樣的探頭已經啓用了嗎?如果是這樣,怎麼樣?
如果有問題,我使用的是Mac OS X,但我相信這將適用於各種操作系統。如果每個操作系統的答案不同,我也會對此有所瞭解。我可以問dtrace啓用了哪些探針?
假設我打開一個終端窗口,啓用一些探測器,並開始使用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的作品,由於一個錯誤。