OS Xの man 1 dtrace 日本語訳

Mac OS Xに付属のDTraceのコマンドdtrace(1)のマニュアルの日本語訳
去年の年末くらいには書き上がってたんけど、上げていなかった。今ざっくり検索しても日本語訳は出てこなかったので上げておこう。8割くらいがSunのSolaris用の日本語訳から。だからライセンスはCDDL?

DTRACE(1)                                                                                          DTRACE(1)



NAME
       dtrace - generic front-end to the DTrace facility
       dtrace - DTrace 機能への汎用フロントエンド

SYNOPSIS
       dtrace [-aACeFhHlqSvVwZ] [-arch arch_name]
              [-b bufsz] [-c fullPathToCommand] [-D name[=def]]
              [-I path] [-L path] [-o output] [-p pid]
              [-s script] [-U name] [-x arg[=val]]
              [-P provider [[predicate] action]]
              [-m [provider:] module [[predicate] action]]
              [-f [[provider:] module:] function [[predicate] action]]
              [-n [[[provider:] module:] function:] name [[predicate] action]]
              [-i probe-id [[predicate] action]]

OVERVIEW
       The  dtrace  command  is a generic front-end to the DTrace facility.  The command implements a simple
       interface to invoke the D language compiler, the ability to retrieve buffered  trace  data  from  the
       DTrace kernel facility, and a set of basic routines to format and print traced data.
	   dtrace コマンドは、DTrace 機能への汎用フロントエンドです。このコマンドはD言語コンパイラを
	   呼び出す簡単なインターフェース、DTraceカーネル機能よりトレースされバッファーされたデータを
	   取得する機能, およびトレースされたデータを整形出力する基本ルーチン群を備えています。

       Users  new  to DTrace are encouraged to read: How To Use DTrace. Sun Microsystems, 2005. Available on
       the web at http://www.sun.com/software/solaris/howtoguides/dtracehowto.jsp
	   新たにDTraceを利用するユーザはこれを読んでください: How To Use DTrace. Sun Microsystems, 2005. 次の
	   webサイトにあります http://www.sun.com/software/solaris/howtoguides/dtracehowto.jsp


DESCRIPTION
       The dtrace command provides a generic interface to all of the  essential  services  provided  by  the
       DTrace facility, including:
       dtrace コマンドは、DTrace 機能が提供する全ての基本サービスに対する汎用インタフェースを提供します。それらを次に示します。


        Options to list the set of probes and providers currently published by DTrace
        DTrace によって現在公開されている一連のプローブやプロバイダを一覧表示するためのオプション

        Options  to enable probes directly using any of the probe description specifiers (provider, module,
         function, name)
        任意のプローブ記述指定子 (provider、module、function、name) を使ってプローブを直接有効にするためのオプション

        Options to run the D compiler and compile one or more D program files or programs written  directly
         on the command-line
         D コンパイラを実行し、1 つ以上の D プログラムファイルまたはコマンド行に直接記述されたプログラムをコンパイルするためのオプション

        Options to generate anonymous tracing programs
		匿名トレースプログラムを生成するためのオプション

        Options to generate program stability reports
		プログラム安定性レポートを生成するためのオプション

        Options to modify DTrace tracing and buffering behavior and enable additional D compiler features
		DTrace のトレース動作やバッファリング動作を変更したり、追加の D コンパイラ機能を有効化したりするためのオプション

OPTIONS
       dtrace has the following options:
	   dtrace には以下のオプションがあります:

       -arch arch_name
              Set dtrace's target data model. See arch(1) for a list of currently supported architectures.
			  dtrace の実行データモデルを設定します. 現在サポートされているアーキテクチャはarch(1)を参照してください.

       -a     Claim anonymous tracing state and display the traced data.  You can combine the -a option with
              the -e option to force dtrace to exit immediately after consuming the anonymous tracing  state
              rather than continuing to wait for new data.
			  匿名トレース状態を要求し、トレースされたデータを表示します。この -a オプションを -e オプションと組み合わせれば、匿名トレース状態を消費したあと、別のデータを待ち続ける代わりにすみやかに終了するように、dtrace に指示することができます。

       -A     Generate  a  plist(5)  of  directives  for  anonymous tracing.  If the -A option is specified,
              dtrace compiles any D programs specified using the -s option or on the command-line  and  con-
              structs  a  plist(5) of dtrace directives to enable the specified probes for anonymous trcaing
              and then  exits.   By  default,  dtrace  attempts  to  store  the  plist  to  the  file  /Sys-
              tem/Library/Extensions/dtrace_dof.kext/Contents/Info.plist.   This  behavior  can  be modified
              using the -o option to specify an alternate output file.
			  匿名トレース用の plist(5) の指令を生成します。-Aオプションが指定された場合、dtrace は-sオプションを使用して指示されたまたはコマンドラインに記述された任意のD プログラムをコンパイルし、指定されたプローブが匿名トレース用に有効化されてから終了するまでの一連の plist(5)のdtrace 指令を作成します。dtrace はデフォルトで、ファイル /System/Library/Extensions/dtrace_dof.kext/Contents/Info.plist にplist を格納しようとします。この動作は-o オプションを使って別の出力ファイルを指定することにより変更できます。

       -b     Set principal trace buffer size.  The trace buffer size can include any of the  size  suffixes
              k,  m, g, or t.  If the buffer space cannot be allocated, dtrace attempts to reduce the buffer
              size or exit depending on the setting of the bufresize property.
			  主トレースバッファーサイズ を設定します。このトレースバッファーサイズには、サイズサフィックス k、m、g、t のいずれかを含めることができます。dtrace は、バッファー領域の割り当てに失敗すると、 バッファーサイズを減らそうとするか、終了します。どちらになるかは、bufresize プロパティーの設定によります。

       -c     Run the specified command cmd and exit upon its completion. If more  than  one  -c  option  is
              present  on  the  command line, dtrace exits when all commands have exited, reporting the exit
              status for each child process as it terminates. The process-ID of the first  command  is  made
              available  to  any D programs specified on the command line or using the -s option through the
              $target macro variable.
			  指定されたコマンド cmd を実行し、その実行が完了したら終了します。コマンド行に -c オプションが複数指定されている場合、dtrace は、すべてのコマンドの終了後に終了しますが、それぞれの子プロセスが終了するたびにその終了ステータスを報告します。最初のコマンドのプロセス ID は $target マクロ変数を介して、コマンド行から指定されたか -s オプションを使って指定されたすべての D プログラムから利用可能になります。

       -C     Run the C preprocessor cpp over D programs before compiling them.  Options can  be  passed  to
              the C preprocessor using the -D, -U, -I, and -H options.  The degree of C standard conformance
              can be selected using the -X option.  Refer to the description of the -X option for a descrip-
              tion of the set of tokens defined by the D compiler when invoking the C preprocessor.
			  D プログラムをコンパイルする前に、それらのプログラムに対して C プリプロセッサ cpp を実行します。-D、-U、-I、-H の各オプションを使えば、C プリプロセッサにオプションを渡すことができます。-X オプションを使えば、C 標準への準拠レベルを選択できます。C プリプロセッサの呼び出し時に D コンパイラによって定義される一連のトークンについては、-X を参照してください。

       -D     Define  the specified name when invoking cpp (enabled using the -C option).  If an equals sign
              (=) and additional value are specified, the name is assigned the  corresponding  value.   This
              options passes the -D option to each cpp invocation.
			  -C オプションで有効化された cpp(1) を呼び出す際に、name を定義します。等号 (=) と追加の value を指定した場合、名前に対応する値が代入されます。このオプションは、cpp が呼び出されるたびに、それに -D オプションを渡します。

       -e     Exit  after compiling any requests and consuming anonymous tracing state (-a option) but prior
              to enabling any probes.  This option can be combined with the -a  option  to  print  anonymous
              tracing  data  and exit, or it can be compiled with D compiler options to verify that programs
              compile without actually executing them and enabling the corresponding instrumentation.
			  すべての要求をコンパイルし、匿名トレース状態を消費し終わったあと (-a オプション)、プローブを有効化する前に終了します。このオプションを -a オプションと組み合わせれば、匿名トレースデータを出力してから終了させることができます。このオプションを D コンパイラのオプションと組み合わせることもできます。この組み合わせを使用した場合、プログラムがコンパイルされるかどうかの検証は行われますが、それらのプログラムが実際に実行されたり対応する計測機能が有効化されたりすることはありません。

       -f     Specify function name to trace or list (-l option).  The corresponding  argument  can  include
              any  of  the  probe  description forms provider:module:function, module:function, or function.
              Unspecified probe description fields are left blank and match any  probes  regardless  of  the
              values  in  those  fields.  If no qualifiers other than function are specified in the descrip-
              tion, all probes with the  corresponding  function  are  matched.   The  -f  argument  can  be
              suffiexed  with  an  optional D probe clause.  More than one -f option may be specified on the
              command-line at a time.
			  トレースまたは一覧表示 (-l オプション) の対象となる関数名を指定します。対応する引数には、プローブ記述形式 provider:module:function、module:function、function のいずれかを含めることができます。指定されなかったプローブ記述フィールドは空のままとなり、そのフィールドの値に関係なくすべてのプローブに一致します。function 以外の修飾子が記述内に指定されなかった場合、その対応する function を持つすべてのプローブに一致します。-f の引数の後にはオプションで、D プローブ節を付加することもできます。-f オプションは、コマンド行で一度に複数指定できます。

       -F     Coalesce trace output by identifying function entry and return.  Function entry probe  reports
              are  indented  and  their output is prefixed with ->.  Function return probe reports are unin-
              dented and their output is prefixed with <-.
			  関数の開始 (entry) と終了 (return) を識別することにより、トレース出力をひとつにまとめます。関数開始プローブのレポートはインデントされ、-> の後ろに出力されます。関数終了プローブのレポートはインデント解除され、<- の後ろに出力されます。

       -h     Generate a header file containing macro definitions for USDT  probes.  If  the  -o  option  is
              present,  the header file is saved using the pathname specified as the argument for this flag.
              If the -o option is not present and the DTrace program is contained in a file  whose  name  is
              filename.d, the header file is saved using the name filename.h.
			  USDT プローブ向けのマクロを格納するヘッダーファイルを生成します。-o オプションが存在している場合、ヘッダーファイルはこのオプションの引数として指定されたパス名を使って保存されます。-o オプションが存在せず、かつ DTrace プログラムが filename.d というファイルに格納されている場合、ヘッダーファイルは名前 filename.h として保存されます。

       -H     Print  the  pathnames of included files when invoking cpp (enabled using the -C option).  This
              option passes the -H option to each cpp invocation, causing it to display the  list  of  path-
              names, one per line, to stderr.
			  -C オプションで有効化された cpp(1) を呼び出す際に、インクルードされたファイルのパス名を出力します。このオプションは、cpp が呼び出されるたびに、それに -H オプションを渡します。その結果、一連のパス名が 1 行に 1 つずつ、標準エラー出力に出力されます。

       -i     Specify  probe identifier to trace or list (-l option).  Probe IDs are specified using decimal
              integers as shown by dtrace -l.  The -i argument can be suffixed  with  an  optional  D  probe
              clause.  More than one -i option may be specified on the command-line at a time.
			  トレースまたは一覧表示 (-l オプション) の対象となるプローブ ID を指定します。プローブ ID を指定する際には、dtrace -l で表示される 10 進整数を使用します。-i の引数の後にはオプションで、D プローブ節を付加することもできます。-i オプションはコマンド行で一度に複数指定できます。

       -I     Add  the  specified  directory  path  to  the search path for #include files when invoking cpp
              (enabled using the -C option).  This option passes the -I option to each cpp invocation.   The
              specified directory is inserted into the search path ahead of the default directory list.
			  -C オプションで有効化された cpp を呼び出す際に、指定されたディレクトリ path を #include ファイルの検索パスに追加します。このオプションは、cpp が呼び出されるたびに、それに -I オプションを渡します。指定されたディレクトリは、検索パス内のデフォルトディレクトリリストの前に挿入されます。

       -l     List  all  probes matching probe specifications appearing in -f, -i, -m, -n, or -P options. No
              tracing is initiated for any probes.
			  -f、-i、-m、-n、-P の各オプション指定に一致するプローブを一覧表示します。これらのオプションが 1 つも指定されなかった場合、このオプションはすべてのプローブを有効化しません。

       -L     Add the specified directory path to the search path for DTrace  libraries.   DTrace  libraries
              are  used  to contain common definitions that may be used when writing D programs.  The speci-
              fied path is added after the default library search path.
			  指定されたディレクトリ path を、DTrace ライブラリの検索パスに追加します。DTrace ライブラリは、D プログラムを記述する際に使用可能な共通定義を格納する目的で使用されます。指定された path は、デフォルトライブラリ検索パスの後に追加されます。

       -m     Specify module name to trace or list (-l option).  The corresponding argument can include  any
              of  the  probe  description  forms  provider:module  or module.  Unspecified probe description
              fields are left blank and match any probes regardless of the values in those  fields.   If  no
              qualifiers other than module are specified in the description, all probes with a corresponding
              module are matched.  The -m argument can be suffixed with an optional D  probe  clause.   More
              than one -m option may be specified on the command-line at a time.
			  トレースまたは一覧表示 (-l オプション) の対象となるモジュール名を指定します。対応する引数には、プローブ記述形式 provider:module、module のいずれかを含めることができます。指定されなかったプローブ記述フィールドは空のままとなり、そのフィールドの値に関係なくすべてのプローブに一致します。module 以外の修飾子が記述内に指定されなかった場合、その対応する module を持つすべてのプローブに一致します。-m の引数の後にはオプションで、D プローブ節を付加することもできます。-m オプションは、コマンド行で一度に複数指定できます。

       -n     Specify  probe  name to trace or list (-l option).  The corresponding argument can include any
              of the probe  description  forms  provider:module:function:name,  module:function:name,  func-
              tion:name,  or name.  Unspecified probe description fields are left blank and match any probes
              regardless of the values in those fields.  If no qualifiers other than name are  specified  in
              the  description,  all  probes  with a corresponding name are matched.  The -n argument can be
              suffixed with an optional D probe clause.  More than one -n option may  be  specified  on  the
              command-line at a time.
			  トレースまたは一覧表示 (-l オプション) の対象となるプローブ名を指定します。対応する引数には、プローブ記述形式 provider:module:function:name、module:function:name、function:name、name のいずれかを含めることができます。指定されなかったプローブ記述フィールドは空のままとなり、そのフィールドの値に関係なくすべてのプローブに一致します。name 以外の修飾子が記述内に指定されなかった場合、その対応する name を持つすべてのプローブに一致します。-n の引数の後にはオプションで、D プローブ節を付加することもできます。-n オプションは、コマンド行で一度に複数指定できます。

       -o     Specify  the  output file for the -A and -l options, or for the traced data.  If the -A option
              is present, and -o is not present, the default output file is /kernel/drv/dtrace.conf.
			  -A および -l オプションまたはトレースデータ自体に対する output ファイルを指定します。-A オプションが存在していて -o が存在していない場合、デフォルトの出力ファイルは /kernel/drv/dtrace.conf になります。

       -p     Grab the specified process-ID pid, cache its symbol tables, and exit upon its  completion.  If
              more  than  one  -p option is present on the command line, dtrace exits when all commands have
              exited, reporting the exit status for each process as it terminates. The first  process-ID  is
              made available to any D programs spe cified on the command line or using the -s option through
              the $target macro variable.
			  指定されたプロセス ID pid を獲得し、そのシンボルテーブルをキャッシュし、その実行が完了したら終了します。コマンド行に -p オプションが複数指定されている場合、dtrace は、すべてのコマンドの終了後に終了しますが、それぞれの子プロセスが終了するたびにその終了ステータスを報告します。最初のプロセス ID は $target マクロ変数を介して、コマンド行から指定されたか -s オプションを使って指定されたすべての D プログラムから利用可能になります。

       -P     Specify provider name to trace or list (-l option).  The remaining  probe  description  fields
              module,  function,  and  name  are left blank and match any probes regardless of the values in
              those fields.  The -P argument can be suffixed with an optional D probe clause.  More than one
              -P option may be specified on the command-line at a time.
			  トレースまたは一覧表示 (-l オプション) の対象となるプロバイダ名を指定します。残りのプローブ記述フィールド module、function、および name は空のままとなり、そのフィールドの値に関係なくすべてのプローブに一致します。-P の引数の後にはオプションで、D プローブ節を付加することもできます。-P オプションは、コマンド行で一度に複数指定できます。

       -q     Set  quiet  mode.   dtrace  will suppress messages such as the number of probes matched by the
              specified options and D programs will not print column headers, the CPU ID, the probe  ID,  or
              insert  newlines into the output.  Only data traced and formatted by D program statements such
              as trace() and printf() will be displayed to stdout.
			  非出力モードを設定します。dtrace は、指定されたオプションや D プログラムの条件に一致するプローブ数などのメッセージを抑制し、列ヘッダーの CPU ID や プローブ ID を出力しなくなるほか、出力に改行を挿入しなくなります。trace() や printf() といった D プログラム文によってトレースおよび書式設定されたデータのみが、標準出力に表示されます。

       -s     Compile the specified D program source file.  If the -e option is present, the program is com-
              piled  but  no instrumentation is enabled.  If the -l option is specified, the program is com-
              piled and the set of probes matched by it is listed, but no instrumentation will  be  enabled.
              If neither -e or -l are present, the instrumentation specified by the D program is enabled and
              tracing begins.
			  指定された D プログラムのソースファイルをコンパイルします。-e オプションが存在している場合、プログラムのコンパイルは行われますが、計測機能は有効化されません。-l オプションが存在している場合、プログラムのコンパイルと一致するプローブの一覧表示は行われますが、計測機能は有効化されません。-e、-l のどちらも存在しない場合には、D プログラムによって指定された計測機能が有効化され、トレースが開始されます。

       -S     Show D compiler intermediate code.  The D compiler will produce a report of  the  intermediate
              code generated for each D program to stderr.
			  D コンパイラの中間コードを表示します。D コンパイラは、個々の D プログラムごとに生成された中間コードに関するレポートを生成し、標準エラー出力に出力します。

       -U     Undefine  the  specified  name  when  invoking cpp (enabled using the -C option).  This option
              passes the -U option to each cpp invocation.
			  -C オプションで有効化された cpp を呼び出す際に、指定された name を未定義にします。このオプションは、cpp が呼び出されるたびに、それに -U オプションを渡します。

       -v     Set verbose mode.  If the -v option is specified, dtrace produces a program  stability  report
              showing the minimum interface stability and dependency level for the specified D programs.
			  冗長モードを設定します。-v オプションが指定された場合、dtrace は、プログラム安定性レポートを生成します。このレポートでは、指定された D プログラムの最小インタフェースの安定性レベルと依存性レベルが示されます。

       -V     Report  the  highest  D programming interface version supported by dtrace.  The version infor-
              maion is printed to stdout and the dtrace command exits.
			  dtrace がサポートする D プログラミングインタフェースのバージョンのうち、もっとも高いバージョンを報告します。このバージョン情報が標準出力に出力されたあと、dtrace コマンドは終了します。

       -w     Allow destructive actions. D programs containing destructive  actions  will  fail  to  compile
              unless this flag is specified.
			  破壊アクションを使用できるようにします。このオプション指定なしでは破壊アクションを含む D プログラムのコンパイルは失敗します。

       -x     Enable or modify a DTrace runtime option or D compiler option.  Boolean options are enabled by
              specifying their name.  Options with values are set by separating the option  name  and  value
              with an equals sign (=).
			  DTrace の実行時オプションまたは D コンパイラオプションを有効化または変更します。ブール型のオプションを有効化するには、その名前を指定します。値を持つオプションを設定するには、オプションの名前と値を等号 (=) で分離します。

       -Z     Permit  probe  descriptions that match zero probes.  If the -Z option is not specified, dtrace
              will report an error and exit if any probe descriptions  specified  in  D  program  files  (-s
              option)  or  on  the command-line (-P, -m, -f, -n, or -i options) contain descriptions that do
              not match any known probes.
			  一致するプローブが 1 つも見つからないようなプローブ記述を許可します。-Z オプションが指定されない場合、D プログラムファイル内で指定されたプローブ記述 (-s オプション) またはコマンド行で指定されたプローブ記述 (-P、-m、-f、-n、または -i オプション) の中で、既知のどのプローブにも一致しないような記述を含むプローブ記述が見つかると、dtrace はエラーを報告し、処理を終了します。

OPERANDS
       Zero or more additional arguments may be specified on the dtrace command line  to  define  a  set  of
       macro  variables ($1, $2, and so on) to be used in any D programs specified using the -s option or on
       the command-line.
	   dtrace コマンド行に 0 個以上の追加引数を指定し、-s オプションを使って指定された D プログラム内またはコマンド行から指定された D プログラム内で一連のマクロ変数 ($1 や $2 など) を定義し使用することができます。

C++ MANGLED NAMES
       By default, dtrace uses the demangled names of C++ symbols. You can tell dtrace to  use  the  mangled
       symbol names by passing -xmangled to the command.
	   標準では、 dtrace はマングル解除( demangled )された C++ シンボル名を使用します。マングルされたシンボル名を使用したい場合は
	    -xmangled をコマンドに与えてください.

OBJECTIVE C PROVIDER
       The  Objective  C  provider is similar to the pid provider, and allows instrumentation of Objective C
       classes and methods. Objective C probe specifiers use the following format:
	   Objective C プロバイダは pid プロバイダと似ており、 Objective C のクラスとメソッドの計測を許可します。 Objective C プローブは次の書式があります。

       objcpid:[class-name[(category-name)]]:[[+|-]method-name]:[name]

       pid    The id number of the process.
	            プロセスid番号

       class-name
              The name of the Objective C class.
			  Objective C のクラス名

       category-name
              The name of the category within the Objective C class.
			  Object C で記述されたカテゴリ名

       method-name
              The name of the Objective C method.
			  Object C メソッド名

       name   The name of the probe, entry, return, or an integer instruction offset within the method.
	               プローブ、エントリー、リターンまたはメソッド内オフセット値の名前

OBJECTIVE C PROVIDER EXAMPLES
       objc123:NSString:-*:entry
              Every instance method of class NSString in process 123.
			  プロセス 123 内の NSString クラス全てのインスタンスメソッド

       objc123:NSString(*)::entry
              Every method on every category of class NSString in process 123.
			  プロセス 123 内の NSString クラス全てのカテゴリの全てのメソッド

       objc123:NSString(foo):+*:entry
              Every class method in NSString's foo category in process 123.
			  プロセス 123 内の NSString クラスの foo カテゴリ全てのクラスメソッド

       objc123::-*:entry
              Every instance method in every class and category in process 123.
			  プロセス 123 内の全てのクラスとカテゴリの全てのインスタンスメソッド

       objc123:NSString(foo):-dealloc:entry
              The dealloc method in the foo category of class NSString in process 123.
			  プロセス 123 内の NSString クラスの foo カテゴリの dealloc メソッド

       objc123::method?with?many?colons:entry
              The method method:with:many:colons in every class in process 123. (A ? wildcard must  be  used
              to  match  colon  characters  inside  of  Objective C method names, as they would otherwise be
              parsed as the provider field separators.)
			  プロセス 123 内の全てのクラスの method:with:many:colons メソッド。 ( コロン(訳注「 : 」)はプロバイダフィールド区切りとして使われているので、Object C メソッド名内部のコロンと一致させるには「 ? 」ワイルドカードを使用する必要がある。 )

BUILDING CODE CONTAINING USDT PROBES
       The process of adding USDT probes to code is  slightly  different  than  documented  in  the  Solaris
       Dynamic Tracing Guide. The steps for adding probes are as follows:
	   USDTプローブをコードに追加する方法は『Solaris 動的トレースガイド』に書いてある方法と若干異なります。プローブ追加方法は以下になります。

       1. Name the provider and specify its probes, using the following form:
	       以下のようにしてプロバイダに名前をつけプローブを指定します。

               provider Example {
                    probe increment(int);
               };

          This  defines  the  Example  provider with one probe, increment, that takes a single int argument.
          Providers can define multiple probes and probes can take multiple arguments.
		  これは一つの int 引数を取る increment プローブ一つを持つ Example プロバイダを定義します。複数の引数を取ったプローブ、複数のプローブを持ったプロバイダを定義することができます。

       2. Process the provider description into a header file.
	       ヘッダファイルにあるプロバイダ記述を処理します。

          The provider description must be converted into a form usable by ObjC/C/C++ code. The dtrace  com-
          mand should be invoked with the -h flag to do this.
		  プロバイダ記述は ObjC/C/C++ コードに変換される必要があります。 dtrace コマンドは -h オプションを使うことによりこれを行います。

               dtrace -h -s exampleProvider.d

          This will generate a header file named exampleProvider.h
		  これは exampleProvider.h というヘッダファイルを生成します。

       3. Add probe invocations to the application
	       アプリケーションにプローブ呼び出しを追加します。

          For  each probe defined in the provider, the provider.h file will contain two macros.The naming is
          as follows:
		  provider.h ファイルにはプロバイダで定義された各プローブに対応した以下の名前を持つ二つのマクロが含まれます。 

               PROVIDER_PROBENAME()
               PROVIDER_PROBENAME_ENABLED()

          In the Example provider, the increment probe becomes:
		  Example プロバイダでは increment プローブになります。

               EXAMPLE_INCREMENT()
               EXAMPLE_INCREMENT_ENABLED()

          Place a macro invocation in the code at each site to be traced. If the arguments passed to a probe
          are expensive to calculate, you may guard the probe placement like this:
		  トレースしたい各部分のコードに呼び出しマクロを記述します。プローブに引数を与えるのに計算量が多い場合、以下のようにプローブを記述する部分をガードすることができます。

               if (EXAMPLE_INCREMENT_ENABLED()) {
                    argument = /* 計算量の多い引数計算コードをここに記述します */;
                    EXAMPLE_INCREMENT(argument);
               };

          The if test will only succeed when the increment probe is active.
		  increment プローブが有効のときのみ if テストが成功し(訳注 プローブが呼び出され)ます。

       4. Compile and link your program normally. No additional compiler or linker flags are required.
	       いつものようにコンパイルとリンクをします。追加のコンパイラオプションやリンカオプションは必要ありません。


EXIT STATUS
       The following exit values are returned by the dtrace utility:
	   dtrace ユーティリティーから次の終了値が返されます。

	   0      The specified requests were completed successfully.  For D program requests, the 0 exit status
              indicates that programs were successfully  compiled,  probes  were  successfully  enabled,  or
              anonymous  state  was  successfully retrieved.  dtrace returns 0 even if the specified tracing
              requests encountered errors or drops.
			  指定された要求が正常終了しました。D プログラム要求の場合、終了ステータス 0 は、プログラムのコンパイル、プローブの有効化、匿名状態の取得、のいずれかが成功したことを示します。指定されたトレース要求でエラーや欠落が発生した場合でも、dtrace は 0 を返します。

       1      A fatal error occurred.  For D program requests, the 1 exit status indicates that program com-
              pilation failed or that the specified request could not be satisfied.
			  致命的エラーが発生しました。D プログラム要求の場合、終了ステータス 1 は、プログラムのコンパイルが失敗したか、指定された要求に応じられなかったことを示します。

       2      Invalid command-line options or arguments were specified.
			  コマンド行に無効なオプションまたは引数が指定された。

SEE ALSO
       How  To  Use  DTrace.  Sun  Microsystems,  2005.  Available  on  the  web at http://www.sun.com/soft-
       ware/solaris/howtoguides/dtracehowto.jsp
       Solaris  Dynamic   Tracing   Guide.    Sun   Microsystems,   2005.    Available   on   the   web   at
       http://docs.sun.com/app/docs/doc/817-6223
       『How  To  Use  DTrace. 』。 Sun  Microsystems、 2005。次のウェブサイトにあります。 
       http://www.sun.com/software/solaris/howtoguides/dtracehowto.jsp
	   『Solaris 動的トレースガイド』。 Sun   Microsystems、 2005。次のウェブサイトにあります。
	   http://docs.sun.com/app/docs/doc/817-6223
	   (訳注 日本語版はこちら http://docs.sun.com/app/docs/doc/819-0395?l=ja )




Version 1.0                                       July 2006                                        DTRACE(1)