Built-In Variables
The following table provides a complete list of D built-in variables. All of these variables are scalar global variables; no thread-local or clause-local variables or built-in associative arrays are currently defined by D.
Table 2-12 DTrace Built-In Variables
| Variable | Description | 
|---|---|
| 
                                  | The first 10 input arguments to a probe represented as raw 64-bit integers. If fewer than 10 arguments are passed to the current probe, the remaining variables return zero. | 
| 
                                  | The typed arguments to the current probe, if any. The  | 
| 
                                  | The program counter location that called the current kernel thread, at the time the probe fired. | 
| 
                                  | The program counter location that called the current user-level thread, at the time the probe fired. | 
| 
                                  | The CPU chip identifier for the current physical chip. For more information, see sched Provider. | 
| 
                                  | The CPU identifier for the current CPU. For more information, see sched Provider. | 
| 
                                  | The CPU information for the current CPU. For more information, see sched Provider. | 
| 
                                  | The lightweight process (LWP) state of the LWP associated with the current thread. This structure is described in further detail in the  | 
| 
                                  | The process state of the process associated with the current thread. This structure is described in further detail in the  | 
| 
                                  | The address of the operating system kernel's internal data structure for the current thread, the  | 
| 
                                  | The name of the current working directory of the process associated with the current thread. | 
| 
                                  | The enabled probe ID (EPID) for the current probe. This integer uniquely identifies a particular probe that is enabled with a specific predicate and set of actions. | 
| 
                                  | The error value returned by the last system call executed by this thread. | 
| 
                                  | The name that was passed to  | 
| 
                                  | The real group ID of the current process. | 
| 
                                  | The probe ID for the current probe. This ID is the system-wide unique identifier for the probe as published by DTrace and listed in the output of  | 
| 
                                  | The interrupt priority level (IPL) on the current CPU at probe firing time. | 
| 
                                  | The latency group ID for the latency group of which the current CPU is a member. See sched Provider for more information. | 
| 
                                  | The process ID of the current process. | 
| 
                                  | The parent process ID of the current process. | 
| 
                                  | The function name portion of the current probe's description. | 
| 
                                  | The module name portion of the current probe's description. | 
| 
                                  | The name portion of the current probe's description. | 
| 
                                  | The provider name portion of the current probe's description. | 
| 
                                  | The processor set ID for the processor set containing the current CPU. See sched Provider for more information. | 
| 
                                  | The name of the root directory of the process associated with the current thread. | 
| 
                                  | The kernel thread name associated with the currently executing thread. | 
| 
                                  | The user thread name associated with the currently executing thread. | 
| 
                                  | The current thread's stack frame depth at probe firing time. | 
| 
                                  | The thread ID of the current thread. For threads associated with user processes, this value is equal to the result of a call to  | 
| 
                                  | The current value of a nanosecond timestamp counter. This counter increments from an arbitrary point in the past and should only be used for relative computations. | 
| 
                                  | The real user ID of the current process. | 
| 
                                  | The current thread's saved user-mode register values at probe firing time. For information about the use of the  | 
| 
                                  | The current value of a nanosecond timestamp counter that is virtualized to the amount of time that the current thread has been running on a CPU, minus the time spent in DTrace predicates and actions. This counter increments from an arbitrary point in the past and should only be used for relative time computations. | 
| 
                                  | The current number of nanoseconds since 00:00 Universal Coordinated Time, January 1, 1970. | 
| 
                                  | Contains non-zero if the current thread is being traced by the current DTrace consumer. | 
| 
                                  | Name of the zone as specified on creation of the process. | 
| 
                                  | The zone identifier. | 
For information about functions built into the D language such as trace, see DTrace Actions and Subroutines.