DTrace in OS-X

While I’m not feeling very good today, I have a headache again, one can only stay in bed for so long. So while browsing around a bit (http://www.opensolaris.org/os/ to be exact).

I stumbled upon some very positive news from the Apple Word Wide Developers Conference (WWDC). According to ZD-NET Australia the next release of Apple OS-X, Leopard, will support DTrance. It also gets an Apple work-over, so it will probably look and feel good too. Take a look at the bottom of Apple’s Leopard preview page. Apple will include a tool called XRay which will leverage DTrace to provide its functionality. Knowing Apple this will probably mean that the original tool will be included as well.

For those who are wondering what DTrace is. Well, it’s a comprehensive dynamic tracing framework. DTrace provides a powerful infrastructure to permit administrators, developers, and service personnel to concisely answer arbitrary questions about the behaviour of the operating system and user programs.

“What?” you might say… well it comes down to this:
For Users:

  • dynamically enable and manage thousands of probes
  • dynamically associate predicates and actions with probes
  • dynamically manage trace buffers and probe overhead
  • examine trace data from a live system or from a system crash dump

For Developers:

  • implement new trace data providers that plug into DTrace
  • implement trace data consumers that provide data display
  • implement tools that configure DTrace probes

(Source: http://www.opensolaris.org/os/community/dtrace/, you can find a more detailed description of DTrace there as well.)

Let’s just say, seeing is believing. Once you see DTrace in action, you’re hooked.