Table of Contents
- Preface
- 1 About DTrace
- 2 The D Programming Language
- 2.1 D Program Structure
- 2.2 Compilation and Instrumentation
- 2.3 Variables and Arithmetic Expressions
- 2.4 Predicate Examples
- 2.5 Output Formatting Examples
- 2.6 Array Overview
- 2.7 External Symbols and Types
- 2.8 Types, Operators, and Expressions
- 2.8.1 Identifier Names and Keywords
- 2.8.2 Data Types and Sizes
- 2.8.3 Constants
- 2.8.4 Arithmetic Operators
- 2.8.5 Relational Operators
- 2.8.6 Logical Operators
- 2.8.7 Bitwise Operators
- 2.8.8 Assignment Operators
- 2.8.9 Increment and Decrement Operators
- 2.8.10 Conditional Expressions
- 2.8.11 Type Conversions
- 2.8.12 Operator Precedence
- 2.9 Variables
- 2.10 Pointers and Scalar Arrays
- 2.11 DTrace Support for Strings
- 2.12 Structs and Unions
- 2.13 Type and Constant Definitions
- 3 Aggregations
- 4 Actions and Subroutines
- 4.1 Action Functions
- 4.2 Subroutine Functions
- 4.2.1 alloca
- 4.2.2 basename
- 4.2.3 bcopy
- 4.2.4 cleanpath
- 4.2.5 copyin
- 4.2.6 copyinstr
- 4.2.7 copyinto
- 4.2.8 d_path
- 4.2.9 dirname
- 4.2.10 getmajor
- 4.2.11 getminor
- 4.2.12 htonl
- 4.2.13 htonll
- 4.2.14 htons
- 4.2.15 index
- 4.2.16 inet_ntoa
- 4.2.17 inet_ntoa6
- 4.2.18 inet_ntop
- 4.2.19 lltostr
- 4.2.20 mutex_owned
- 4.2.21 mutex_owner
- 4.2.22 mutex_type_adaptive
- 4.2.23 mutex_type_spin
- 4.2.24 ntohl
- 4.2.25 ntohll
- 4.2.26 ntohs
- 4.2.27 progenyof
- 4.2.28 rand
- 4.2.29 rindex
- 4.2.30 rw_iswriter
- 4.2.31 rw_read_held
- 4.2.32 rw_write_held
- 4.2.33 speculation
- 4.2.34 strchr
- 4.2.35 strjoin
- 4.2.36 strlen
- 4.2.37 strrchr
- 4.2.38 strstr
- 4.2.39 strtok
- 4.2.40 substr
- 5 Buffers and Buffering
- 6 Output Formatting
- 7 Speculative Tracing
- 8 dtrace Command Reference
- 9 Scripting
- 10 Options and Tunables
- 11 DTrace Providers
- 12 User Process Tracing
- 13 Statically Defined Tracing of User Applications
- 14 Statically Defined Tracing of Kernel Modules
- 15 Performance Considerations
- 16 DTrace Stability Features
- 17 Translators
- 18 DTrace Versioning