fbt Provider
            
         This section describes the Function Boundary Tracing (FBT) provider, which
                        provides probes associated with the entry to and return from most functions
                        in the Oracle Solaris kernel. A function is the fundamental unit of program
                        text. In a well-designed system, each function performs a discrete and
                        well-defined operation on a specified object or series of like objects.
                        Therefore, even on the smallest Oracle Solaris systems,
fbt provides 20,000 probes.
               
Similar to other DTrace providers, fbt has no probe effect
                        when it is not explicitly enabled. When enabled, fbt only
                        induces a probe effect in probed functions. While the fbt
                        implementation is highly specific to the instruction set architecture,
fbt has been implemented on both SPARC and x86
                        platforms. For each instruction set, there are a small number of functions
                        that do not call other functions and are highly optimized by the compiler,
                        called leaf functions, that cannot be instrumented by
fbt. Probes for these functions are not present in
                        DTrace.
               
Effective use of fbt probes requires knowledge of the
                        operating system implementation. Therefore, it is recommended that you use
fbt only when developing kernel software or when
                        other providers are not sufficient. Other DTrace providers, including
syscall, sched,
proc, and io, can be used to
                        answer most system analysis questions without requiring operating system
                        implementation knowledge.