Apple Crippled Its DTrace Port 476
Linnen writes in to note that one of developers of Sun's open source system tracing tool, DTrace, has discovered that Apple crippled its port of the tool so that software like iTunes could not be traced. From Adam Leventhal's blog: "I let it run for a while, made iTunes do some work, and the result when I stopped the script? Nothing. The expensive DTrace invocation clearly caused iTunes to do a lot more work, but DTrace was giving me no output. Which started me thinking... did they? Surely not. They wouldn't disable DTrace for certain applications. But that's exactly what Apple's done with their DTrace implementation. The notion of true systemic tracing was a bit too egalitarian for their classist sensibilities..."
And as quick as it is reported (Score:5, Informative)
Re:And as quick as it is reported (Score:3, Informative)
Well, Apple is *my* friend! :-P (Score:2, Informative)
When Apple begins sending out legions of hunter-killer robots to take down open source projects and assassinate their maintainers, then you might have a point, Mr. Zombie, sir.
It's worse, they have broken DTrace (Score:5, Informative)
Thanks Community, now fix Quicktime 7.4 (Score:5, Informative)
http://blogs.adobe.com/keyframes/2008/01/dont_update_to_quicktime_74.html [adobe.com]
Re:The point of the article (Score:5, Informative)
Re:So what? (Score:4, Informative)
You obviously didn't look very hard. [apple.com]
And software development. Or where did you think the developers of those video editors work and test their code?
No disagreement there, but it doesn't hurt to remind people that OS X is not that. People often leave Linux for OS X, claiming that it's basically an easier-to-use Linux than Linux, you still have all your stuff, etc. And you can always ssh to a Linux server to do real work.
Why is this OK?
Re:So what? (Score:2, Informative)
How about some examples of "real work" that can't be done in OS X's shell? Admittedly, I don't so as much via the command line in OS X as I did when using Linux for a desktop OS, but I haven't encountered anything preventing me from doing so. I can't attest to OS X's server version; I don't use it. I, like you mentioned, moved to OS X as a desktop Unix because it is easier to maintain. Instead of spending time keeping the underlying system in order, I can work in a cohesive GUI desktop environment with the comforting option of being able to fall back on traditional Unix technologies. E.g. I can run Xmaxima, or vanilla maxima, if I so choose. In the three years I've been using OS X as my primary OS, I haven't had to "ssh to a Linux server to do real work."
Re:So what? (Score:2, Informative)
Actually, it's fine, so long as there's a vigorous community ready to reveal what they're up to. As long as they don't do anything illegal, it's our prerogative to point out things they do that, while legal, are pretty sleazy.
Another black mark against Apple. It's almost like the 80's again, when Stallman and the FSF had well written anti-Apple essays about their Look-and-feel lawsuit.
Maybe the icon for apple.slashdot.org articles needs updating, though.
Re:One question: (Score:5, Informative)
For now, yes... But apple has been in the process of creating cryptographically secure signing and verification of system applications. The next step for them will be to have system tools like this be executed ONLY if they are the unmodified, signed applications that apple originally released.
When that happens, it wouldn't matter if you recompile dtrace - your modified version would just not run.
for info on the current code signing specification from apple (which is pretty much benign for now), see:
--jeffk++
Wow (Score:4, Informative)
Leopard's DTrace isn't broken. Apple put in an API for a program to request that debugging & dtrace be disabled for it. Clearly it's there to keep FairPlay from being broken (too easily). Something that commercial developers could understandably want for their software, to prevent keygen hacks, etc.
The link I provide shows a simple way to get around it. Hell, debugging iTunes is directly encouraged in an Apple Technote (linked in the article).
As listed in the article I linked to, you can get around it by trapping the API call in gdb and disabling it.
Re:Thanks Community, now fix Quicktime 7.4 (Score:2, Informative)
Re:Wow (Score:5, Informative)
Actually, Leopard's DTrace is broken, and that was the point of the blog post. Here's the issue: DTrace programs that would normally work and collect valid data will fail if a process is running with Apple's trace-me-not bit set. Forget tracing iTunes or other applications that don't want to be traced. It's that probes that should fire don't as an unintended side-effect of Apple's hack to obscure certain applications.
A much smarter approach would have been for Apple to deny visibility into such a process, but still allow a user to monitor system-level events (e.g. timers and system calls). This would have allowed for the (questionably motivated, and highly circumventable) protection while not damaging DTrace and correctly phrased queries.
Everyone needs to use this now (Score:3, Informative)
Every developer reading this who cares about DTrace and wants to be able to use it for system-wide metrics should set the P_LNOATTACH flag in the next point release for their app. Apple won't like it, but if enough developers do it as a form of protest, it would effectively make DTrace/Instruments ineffective, eliminating a bullet-point feature from Leopard.
DTRACE (Score:5, Informative)
Re:And as quick as it is reported (Score:1, Informative)
Re:And as quick as it is reported (Score:1, Informative)
Re:And as quick as it is reported (Score:2, Informative)
Re:Operating System Tying (Score:3, Informative)
Re:Yet another example of how Apple is not our fri (Score:3, Informative)
Remember, that's the same CEO that refused to remove the DRM off of non-RIAA tracks, even at the request of the copyright holders, until he had colluded with major labels to design iTunes Plus. Double standard indeed.
Re:And as quick as it is reported (Score:2, Informative)
"It is not technically a microkernel implementation, but still has many of the benefits of a microkernel, such as Mach interprocess communication mechanisms and a relatively clean API separation between various parts of the kernel."
http://developer.apple.com/documentation/Porting/Conceptual/PortingUnix/additionalfeatures/chapter_10_section_8.html [apple.com]
This one has pickshurez!!11!1!: http://developer.apple.com/documentation/Darwin/Conceptual/KernelProgramming/Architecture/chapter_3_section_2.html#//apple_ref/doc/uid/TP30000905-CH1g-TPXREF101 [apple.com]
Old is New Again (Score:5, Informative)
Back in 2000, if you installed MacsBug on a Mac you couldn't play DVDs. When you opened the DVD Player you got an error message telling you a debugger was installed. In these pre-memory protection days, MacsBug was the only debugger low-level enough to catch a whole mess of problems. Unfortunately, MacsBug was loaded when the system booted, so the only way to play a DVD was to remove MacsBug and restart your machine.
Long time Mac developer ally Bare Bones Software (they have a great text editor) created a patch that "fixed" this limitation. AFAIK, Apple never said anything about their patch and just quietly let it exist. http://www.macobserver.com/news/00/april/000418/dvdplayerhelper.shtml [macobserver.com]
This whole message mess came about because Macrovision didn't want people disabling their protection on video-output (there were Macs you could literally plug into VCRs then), and I suspect it was also to guard the CSS "encryption."
When Blu-ray movies finally show up in Macs, this kind of thing is probably going to get a lot worse than patches to D-Trace.
Re:Not equivalent, no double standard (Score:4, Informative)
But Jobs is chronically evil.
Re:So what? (Score:3, Informative)
Take a look at the way they go after the science market (http://www.apple.com/science/ [apple.com]).
Apple market OS X as a UNIX system and have done for a long time. They're just smart enough only to market it as a UNIX system to the markets that appreciate UNIX.
Re:OS-X itself (Score:2, Informative)
Re:From the article (Score:2, Informative)
The line you quote is not "from the article", but rather from one of the comments on the blog's web page. Since that blog allows anonymous posting, it could well have been an Apple flack or fanboy who was trying to soften to blow of what is a very negative article.
Nice try, though.
Re:Luckily... (Score:1, Informative)
Lose! LOSE! You fucktard, the verb you're looking for only has one "o" in it, unless you mean to say that Apple is somehow going to set free "what they have gained." As if that statement isn't so vague that it could mean whatever you want it to mean in the first place. How did this ever get modded up at all?