Apple circumvents DTrace open source utility
updated 11:30 am EST, Fri January 25, 2008
Apple circumvents DTrace
Some open source developers are upset with Apple for "undermining" a key piece of open source software called DTrace in Mac OS X. Apple's introduction of a feature that allows programs like iTunes to disable tracing as well as other debugging tools is causing serious problems for open source developers, effectively rendering useless other parts of DTrace in unanticipated ways -- such as causing unrelated probes to fail while anti-tracing flags are running.
DTrace is a tracing framework that got its start at Sun Microsystems, and was later released as open source as part of OpenSolaris. The software allows developers to tune as well as troubleshoot applications and the operating system itself, according to Macworld UK.
Apple's implementation of DTrace breaks some of the utility's functionality and is "antithetical to the notion of systemic tracing, antithetical to the goals of DTrace, and antithetical to the spirit of open source," according to Adam Leventhal, one of DTrace's original developers.
"They're not just crippling DTrace in the way they intended, but also in ways that are, in some ways, more pervasive," Leventhal wrote in his blog. "It's annoying that Apple decided to disallow tracing for applications that choose to opt out, and it's a fairly serious issue, but the bigger issue is that in doing so they've broken DTrace."










i can see the
01/25, 12:12pm reply
uses for such a tool, and Apple's including it was a nice touch, but I doubt Apple intentionally breaks Dtrace for use in applications that havn't "opted out" of tracing. Dtrace is a nice tool for legitimate developers, but arguably also a nice tool for less noble ends. Apple certainly has a right to opt out certain applications from Dtrace, and I'm sure that the side effects noted are bugs introduced by Apple's opting out. It could be that Dtrace has a hole in it's logic that allows anti-tracing flags to prevent other non-related probes to fail. Don't know. Seems like an issue between the Dtrace developers and Apple.
The blog post pointed to by the article could just be posturing to get more attention on the problem, rightly or wrongly. Don't know if the developer/s had much dialog with Apple regarding the problem. It appears from the MacWorld article that there is a workaround available, and my guess is that Apple will provide a fix for this eventually...
Flying Meat
Fresh-Faced Recruit
Joined: Jan 2007
DRM
01/25, 12:32pm reply
Sounds like it's simply another side-effect of Apple being required to enforce DRM? If Dtrace for "less than noble ends" (ie, helping to crack the DRM), then it may be a case of you get limited Dtrace functionality or none at all. Either you let Apple limit the capability of the tool in order to protect the DRM software, or you get no tool at all.
ender
Fresh-Faced Recruit
Joined: Mar 1999
open source?
01/25, 01:43pm reply
someone can port it again since it is open source
Bartman
Fresh-Faced Recruit
Joined: Oct 1999
potential danger
01/25, 03:27pm reply
The problem with the default Leopard dtrace is that any program can now can hide itself from tracing, including viruses, trojans, and rootkits.
Security researchers and anti-virus companies now have a more difficult job trying to detect malware on users' computers.
The workaround is simple - someone should release a version of dtrace that bypasses Apple's changes.
jalb
Fresh-Faced Recruit
Joined: Jan 2008
re: potential danger
01/25, 07:05pm reply
jalb wrote: he problem with the default Leopard dtrace is that any program can now can hide itself from tracing, including viruses, trojans, and rootkits.
Exactly which viruses, trojans, and rootkits would those be?
MacScientist
Fresh-Faced Recruit
Joined: Feb 2000
Re: drm
01/28, 12:16pm reply
It may be the case, but, again, Apple makes no such information available. They never explain why (let alone even tell people such a case). They just stick it in there, see if anyone notices, and go on from there.
They could just put in the developer's note: "DTrace does not work with iTunes or Quicktime, so do not run those programs when you actually expect DTrace to work correctly". Then again, if you're software that you're working on uses Quicktime or iTunes, you're screwed.
But that's not Apple's fault. It's those damned labels and studios! They're the ones to blame for everything!
testudo
Fresh-Faced Recruit
Joined: Aug 2001