4

問題があれば、私は Mac OS X を使用していますが、これはすべての OS に当てはまると思います。OSごとに答えが異なる場合は、それについても学びたいと思います。

ターミナル ウィンドウを開き、いくつかのプローブを有効にして、DTrace でデータの収集を開始するとします。

別のターミナル ウィンドウから、有効になっているプローブを DTrace に問い合わせることはできますか? もしそうなら、どのように?

4

1 に答える 1

2

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 では同じカーネル変数を使用できません。

于 2011-06-22T02:17:37.090 に答える