Chapter 40
Translators
In Chapter 39, Stability, we learned about how DTrace computes and reports program stability
attributes. Ideally, we would like to construct our DTrace programs by consuming
only Stable or Evolving interfaces. Unfortunately, when debugging a low-level problem or
measuring system performance, you may need to enable probes that are associated
with internal operating system routines such as functions in the kernel, rather
than probes associated with more stable interfaces such as system calls. The
data available at probe locations deep within the software stack is often
a collection of implementation artifacts rather than more stable data structures such
as those associated with the Solaris system call interfaces. In order to
aid you in writing stable D programs, DTrace provides a facility to
translate implementation artifacts into stable data structures accessible from your D program
statements.