Martin MC Brown

DTrace on OS X

By Martin MC Brown
August 11, 2006 9:40 AM EDT
In case you missed it, WWDC was this week.

Fortunately, the Internet troubles I had earlier in the week (when a cable was replaced due to a very bad line, probably damaged in a recent storm) didn't prevent me from keeping up to date with what was going on. While it is ever so tempting to talk about the disappointments at WWDC and how, once again, the hype expectation didn't quite equal the reality, there was still quite a lot of good stuff if you knew what you were looking for.

Of interest, particularly to developers, is the introduction of support for the DTrace debugging tool, which was first introduced as part of Solaris 10. I'm working on some detailed pieces on Solaris 10 features over the next week where DTrace will be one of the pieces I cover.

Apple calls the application that monitors DTrace elements Xray, and it is a very apt name. DTrace exposes information within the code and operating system in a way that is far less intrusive and resource heavy than the typical debugging additions normally included in code. Using DTrace really is therefore a bit like doing an Xray on your code - viewing it, but with very little impact or imposition.

Just as interesting is the way that DTrace has become a part of OS X. DTrace is a Sun developed technology, released as Open Source through OpenSolaris and now, like many other components, added to OS X and the Xcode environment. This isn't a collaboration between Sun and Apple, it is simply a case of Apple using open source code as part of their application, the source of which happens to be Sun.

You can find more on the introduction with Bryan Cantrill's post: http://www.apple.com/macosx/leopard/xcode.html and Apple OS X Includes DTrace by Ben Rockwood.

Hopefully this won't be the last Sun open source product we see introduced in OS X. I'm hoping they will include ZFS soon to replace the aging HFS/HFS+.