ktrace is a utility included with certain versions of BSD Unix and Mac OS X that traces kernel interaction with a program and dumps it to disk for the purposes of debugging and analysis. Traced kernel operations include system calls, namei translations, signal processing, and I/O.
ktrace is somewhat similar to Linux's strace, except for being much faster with strace, every system call executed by the traced program requires context switch to the tracing program and back, while the tracing with ktrace is actually performed by the kernel, so no additional context switches are required.
Trace files generated by ktrace (named ktrace.out by default) can be viewed in human-readable form by using the kdump utility.
Since Mac OS X 10.5 Leopard, ktrace has been replaced by dtrace.