Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Programming Businesses OS X Operating Systems IT Technology Apple

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..."
This discussion has been archived. No new comments can be posted.

Apple Crippled Its DTrace Port

Comments Filter:
  • by Evets ( 629327 ) * on Tuesday January 22, 2008 @05:27PM (#22145352) Homepage Journal
    As quickly as the issue is reported, a hack [bikemonkey.org]comes out to resolve it. Gotta love how quickly the community can respond to these things.
    • Re: (Score:3, Informative)

      by KublaiKhan ( 522918 )
      The joy of open source--with that many brains working on a problem, odds are that someone already knows how to fix it.
    • by Reverend528 ( 585549 ) * on Tuesday January 22, 2008 @05:41PM (#22145572) Homepage
      Thank god apple has a thriving community that is constantly working to fix apple's design decisions. Someone should try building an OS that's entirely community supported. Imagine how productive they would be without apple working against them.
    • by voidstin ( 51561 ) on Tuesday January 22, 2008 @06:13PM (#22146076)
      It's nice that Dtrace works again. But I'm betting a lot more people use After Effects or Premiere. The QT 7.4 update which enables movie rentals from iTunes breaks any render that takes longer than 10 minutes. Thank god DRM is here to protect me from the work I need to do. Wasn't apple supposed to me the machine for media professionals?

      http://blogs.adobe.com/keyframes/2008/01/dont_update_to_quicktime_74.html [adobe.com]
  • DRM? (Score:4, Interesting)

    by StevisF ( 218566 ) on Tuesday January 22, 2008 @05:29PM (#22145398)
    Could this to help prevent circumvention of DRM?
    • Re: (Score:2, Interesting)

      by mwsmith824 ( 638640 )
      Most likely yes as iTunes is the only app that sets the flag. How quickly will Apple patch around the hack is the interesting question....
    • Re:DRM? (Score:5, Insightful)

      by KublaiKhan ( 522918 ) on Tuesday January 22, 2008 @05:34PM (#22145460) Homepage Journal
      That may have been Apple's intent, but as usually happens in such cases, the end result is to encourage people to find out new ways around the 'protections' that have been inflicted.
      • Re:DRM? (Score:5, Insightful)

        by mstone ( 8523 ) on Tuesday January 22, 2008 @06:59PM (#22146734)
        Most likely, Apple's intent is to deliver a 'credible effort' to prevent circumvention and/or reverse engineering.

        Even though the labels have largely dropped DRM, they still don't like the idea of users having control over digital music. It's part of their DNA. Their whole business revolved around having control over the production and distribution systems, and they just can't contemplate existence without having control over something. The contracts between Apple and the labels reflect that fear, with Apple having the job of making it look like the horses are still in the barn even though the door is open.

        Now technically, that's impossible. But my experience with corporate software development has shown me that you can balance 'customers who don't want to know what's impossible' with judicious use of handwavium. You don't have to build a solution that's bulletproof, you just need something that works most of the time. It doesn't matter if there are workarounds, or even if those workarounds are practically trivial for anyone with a technical background, as long as you can't discuss the workaround without using technical terms.

        It's sort of an extension of the Sapir-Whorf hypothesis. It's not that your customers can't think about the problem if you lack the vocabulary, it's more that they won't want to think about the problem if they have to spend effort learning how to discuss it intelligently.

        So from a contractual standpoint, providing a 'credible effort' is more about obfuscation than actually trying to do the impossible. Apple probably doesn't care if people can work around this issue, as long as the explanation boils down to 'blah blah blah' to aggressively uninformed label executives.

    • Could this to help prevent circumvention of DRM?

      Of course.

      The interesting issue is that nobody can compete with Apple on, say, a music store effectively.

      When they add a new iTunes feature, they can change Quicktime to support it or they can disable DTrace so people can't easily reverse it. Nobody else can do that. They're probably not going to get into a DOJ tiff over it, though - Bush [the _ administration] isn't likely to get into it, and Al Gore is on their board.

      And so it's probably not surprising tha
      • by mstone ( 8523 ) on Tuesday January 22, 2008 @07:37PM (#22147158)
        ---- They're probably not going to get into a DOJ tiff over it, though . . .

        *sigh*

        There are plenty of alternative sources for digital music, almost all of which will play on an iPod and be indexed by iTunes. The ones that don't are formats the market isn't beating down Apple's door to support (Ogg), or which require licensing fees (WMA). All the MP3s you've bought from Amazon play on an iPod. All the tracks you import from a CD will play on an iPod. The iTunes store is a convenience for iPod owners, not a necessity.

        Besides, the standard operational definition of a monopoly is that a company can raise prices without losing sales, because consumers don't have credible alternatives. So far, Apple's behavior with regard to pricing is to fight against price increases.

        There are credible alternatives to the iPod for people who want a digital music player. There are credible alternatives to the iTunes store for people who want to buy digital music. There are credible ways to get music without a digital music player. Apple has the leading products in the digital music player market, and is one of the leading outlets for digital music, but there is a big-ass difference between being a market leader and being a monopolist engaging in anticompetitive behavior, and the DOJ's attitude toward market leaders in competitive markets is "don't bother me, I have real work to do."

    • Re: (Score:3, Interesting)

      by mikael ( 484 )
      It might even help someone write a subversive program that cannot be traced - create a new executable file with these bits set (or have them set during execution, or whatever), execute this process and you have something running that can't be traced.
  • by kherr ( 602366 ) <kevin&puppethead,com> on Tuesday January 22, 2008 @05:32PM (#22145428) Homepage
    Come on, this isn't a class struggle. It's Big Business trying to protect their intellectual property. DRM sucks, this is yet another way in which it degrades computer systems. But Apple's just being a company, and their hack to DTrace is actually good coding. Dislike their choice, sure. But there's no epic struggle for humanity here.

    • by Hsensei ( 1055922 ) on Tuesday January 22, 2008 @05:34PM (#22145458) Homepage
      Of course if it was MS you would have you pitchfork and torch ready. I forget Jobs can do no wrong.
    • Re: (Score:2, Insightful)

      by Anonymous Coward
      Some would argue that the struggle against corporations is the struggle for humanity and that it plays out in seemingly innocuous things like this.

      A battle is not the war, but it is part of it.
      • And some others would argue that the struggle against corporations -- against the organizations that let us wring ever more value from ever less labor -- is a cynical struggle to return humanity to living in caves and digging for roots to eat, a golden time when the folks with silver tongues and zero conscience (lawyers, politicians, and related rabble-rousers, the kind who dominate in high school) could always be on top, while socially-misfit four-eyed dweebs with good ideas -- the kind who found and manag
        • And some would argue that corporations are valuable economic engines that have built-in antisocial tendencies that can never be eradicated, but must be constantly monitored and kept in check. Corporations are powerful entities that resist those efforts, making it a struggle.

          The struggle between "good" entities and "evil" ones is a mythical recasting of the everyday struggle between good and evil elements of every person. People are impure, institutions are impure. Corporations are a valuable kind of inst
          • by Quadraginta ( 902985 ) on Tuesday January 22, 2008 @07:13PM (#22146896)
            Friend, a corporation is a miniature society. It's an organization of people that divides labor for the purpose of maximizing the welfare of all, subject to an agreed-upon heirarchical distribution scheme. (That is, the wealth it creates is not usually distributed equally.) Society is merely the largest possible corporation, in which we are all, whether we like it nor not, employed.

            What you are saying is that the smaller organization we may voluntarily join (e.g. the corporations that employ us) should be policed by and subject to the larger organizations that we are a member of whether we like it or not (e.g. the country in which we are born).

            Yeah, well, not by me. I prefer to choose with whom I associate, and to whom I listen. I most definitely do not like the idea of the largest possible organization of which I'm a member, like it or not, enforcing the ultimate rules of my life. I'm much happier if the rules are defined by a smaller organization that I voluntarily join, and which I can voluntarily leave if I don't like the rules.

            In a free society, where the largest powerful organizations are much smaller than the entire country, I can find the corner of it that plays by the rules I like. I have choices. I can be mostly who I want to be. In your "social" society, I have no more choices. I have to be what the majority thinks I should be, act accordingly to their morality and expectations.

            No thanks! I know my average fellow man too well to think it would be fun to allow him to dictate the terms of my life.
      • by Samgilljoy ( 1147203 ) on Tuesday January 22, 2008 @05:50PM (#22145744)

        The struggle against corporations may be an important part of the defense of humanity, but some would argue that seemingly innocuous things are often just small, innocuous things, and that to go ape shit about them and blow them out of proportion is characteristic of small minds and spirits.

        Some would also argue that getting hung up on the small things and seeing battles to be won therein is a good way to ensure that people never take on any large and not so seemingly innocuous issues, that they self indulgently imagine themselves to be revolutionaries fighting the good fight and propagating righteous and enlightened rhetoric.

        And even if these people are totally wrong, it still doesn't excuse the ideologically loaded "classist sensibilities" bullshit. But I'm sure the original poser, err poster, feels good about his awesomeness.

    • by Quiet_Desperation ( 858215 ) on Tuesday January 22, 2008 @05:47PM (#22145688)
      Are you kidding?

      This is Slashdot where "paper or plastic" is an epic struggle directly and immediately affecting the fates of billions!

      BILLIONS, I tell you! BILLIONS!

    • Re: (Score:3, Insightful)

      by Anonymous Coward
      Good coding my ass.

      It BREAKS dtrace.

      If iTunes happens to be the process interrupted to run the dtrace probe, that flag being set prevents the probe from running.
    • Re: (Score:2, Interesting)

      by Anonymous Coward

      Dislike their choice, sure. But there's no epic struggle for humanity here.

      "Do you want to spend the rest of your life selling sugared water or do you want a chance to change the world?"
    • by dcollins ( 135727 ) on Tuesday January 22, 2008 @06:35PM (#22146428) Homepage
      Completely disagree.

      "Apple's just being a company" = "Class struggle"

      The fact that there are two classes of legally recognized entities, with competing rights allocated to each, is sort of the definition of a class struggle.
    • by commodoresloat ( 172735 ) * on Tuesday January 22, 2008 @07:16PM (#22146924)

      Come on, this isn't a class struggle. It's Big Business trying to protect their intellectual property. DRM sucks, this is yet another way in which it degrades computer systems. But Apple's just being a company, and their hack to DTrace is actually good coding. Dislike their choice, sure. But there's no epic struggle for humanity here.
      First, they crippled DTrace, but I did not use DTrace, so I did not speak up.
      Then, they came for gettytab, but I did not speak out, because I was happy with Apple's default terminal configuration.
      Then, they came for snort, but I was not worried about intrusion detection so I did not speak up.
      Next, they came for mkdep, but I did not speak out, because the maid does all my compiling.
      Sadly, when it came time for them to use killall, there was nobody left to speak up for me!
  • by Zombie Ryushu ( 803103 ) on Tuesday January 22, 2008 @05:33PM (#22145438)
    Apple is as much the DRM laden threat to open computing as Microsoft is. We may have circumvented this issue this time, but what about the time after that? and after that? Its a cat and mouse game Apple is going to play.
    • Oh, piffle. Without Apple DRM, iTunes (store) would be impossible due to the idiot record labels. Go grouse at them. Outside of iTunes, what is there in Mac OS X that's DRMed?

      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.
      • OS-X itself (Score:4, Interesting)

        by Sycraft-fu ( 314770 ) on Tuesday January 22, 2008 @06:43PM (#22146530)
        It is DRM'd to only run on Apple hardware. There is nothing technical that prevents it from running on any modern PC since that is indeed what Macs are now. However that won't work, hence there are groups out there that have to hack it to disable that and allow it to run on any hardware.

        You can argue till your blue in the face that they need to do this, doesn't change what they are doing. If it wasn't DRM'd, it'd run fine on any hardware that met its technical requirements.
        • Re:OS-X itself (Score:5, Insightful)

          by jeff4747 ( 256583 ) on Tuesday January 22, 2008 @07:44PM (#22147268)
          Apple boxes don't use the same kind of BIOS as a non-Apple box. If you somehow got a retail OS-X DVD to install on your Compaq, it wouldn't boot.

          Now, it's not too hard to get around this (install Darwin), but there actually is something "technical that prevents it from running on any modern PC".
        • Re:OS-X itself (Score:4, Insightful)

          by 99BottlesOfBeerInMyF ( 813746 ) on Tuesday January 22, 2008 @10:28PM (#22148820)

          It is DRM'd to only run on Apple hardware.

          Well sort of, but it is also licensed to only run on Apple hardware, so unless you're planning on breaking the license you don't have a problem. DRM on media attempts to apply licensing to content, which is a slightly different matter. As a Linux supporter I object to users modifying Linux and redistributing it without the source as that violates the license. I don't see why Apple should not only object but take measures to prevent people from violating their license. (Especially given that they are in a bad place economically as their crown jewels is a desktop OS and the desktop OS market is monopolized, which means if they can't bundle their OS with a complete system, there is no long-term way to stay in business unless the courts act effectively against MS... and we all know our court system is way too corrupt for that.)

          Look I admit it would be nice if Apple unbundled their OS and hardware, but I'm also smart enough to know that would quickly lead to Apple having to stop developing their OS altogether. I'm also smart enough to see how much collateral damage that would do to open standards and Linux as it would change the market from, 8% OS X and 1% Linux and 80% Windows to 98% Windows in a hurry. MS doesn't need more power to break the market and that is exactly what we'd have if Apple dropped their hardware and OS bundling as a license requirement.

    • There's no friendship, you're just a fan and Apple rakes in your money. They love this cult like status, some of it is well deserved, their design is unmatched in the computer field. If Mac fans were a little more reserved instead of opening their wallets then Apple would stop and think a bit more.

      I'm by no means a fan boy, I own a Mac Pro and I run Leopard. They're just tools and even with Apple's flaws I'll still with them until something better appears.

      Right now I'd sooner eat a slightly damaged apple th
    • I agreed, if MS had done this, the mob would already have gathered. :-p

      Now it's more about "Thankfully a hack is already out. Move along folks, it was just another DRM decision by Apple."
  • DMCA (Score:2, Redundant)

    Is it possibly they included this so as not to provide a tool capable of circumventing DRM?
  • Great! (Score:5, Insightful)

    by Jeremi ( 14640 ) on Tuesday January 22, 2008 @05:34PM (#22145444) Homepage
    So can I apply this NOATTACH flag to my l33t rootkit software to make sure it goes undetected by any system diagnostic tools?


    This will be a big help for me in my quest for a legion of Mac zombies ;^)

  • Luckily... (Score:5, Interesting)

    by cromar ( 1103585 ) on Tuesday January 22, 2008 @05:35PM (#22145476)
    From the DTrace source (in an #IFDEF APPLE):
    /*
    * If the thread on which this probe has fired belongs to a process marked P_LNOATTACH
    * then this enabling is not permitted to observe it. Move along, nothing to see here.
    */


    Luckily no malicious programmer will mark their malware's process with this flag!
    • Re: (Score:2, Interesting)

      This reminds me of the bozo bit in the early Macintosh file system. Not much protection, but it did force the attacker to take an action that might be later used to demonstrate intent. Perhaps the P_LNOATTACH serves a similar purpose?
    • From the DTrace source (in an #IFDEF APPLE):
      /*
      * If the thread on which this probe has fired belongs to a process marked P_LNOATTACH
      * then this enabling is not permitted to observe it. Move along, nothing to see here.
      */

      Luckily no malicious programmer will mark their malware's process with this flag!
      Maybe Apple has a few Macs with a modified DTrace version that _only_ observes processes with this flag set...
    • Evil bit (Score:5, Funny)

      by flyingfsck ( 986395 ) on Tuesday January 22, 2008 @06:01PM (#22145920)
      Together with careful use of the Evil Bit by malicious coders, we will have complete security in Apple system software.
    • Re: (Score:3, Funny)

      by Kjella ( 173770 )
      /*
      * If the thread on which this probe has fired belongs to a process marked P_LNOATTACH
      * then this enabling is not permitted to observe it. Move along, nothing to see here.
      */

      So... written by a slashdot reader? Don't know of many other places that displays that message on a regular basis.
      • Re: (Score:3, Interesting)

        Google says Results 1 - 10 of about 91,600 for "move along, nothing to see here" -site:slashdot.org.
        • Re: (Score:3, Interesting)

          by Kjella ( 173770 )

          Google says Results 1 - 10 of about 91,600 for "move along, nothing to see here" -site:slashdot.org.
          Yes, but:
          Google says Results 1 - 10 of about 21,900 for "move along, nothing to see here" -slashdot. That makes it 70,000 hits mentioning slashdot, 22000 that don't.
    • Re:Luckily... (Score:5, Insightful)

      by Hamilton Lovecraft ( 993413 ) on Tuesday January 22, 2008 @06:28PM (#22146308)
      So, uh, why don't you open source wizards recompile DTrace without the code that checks P_LNOATTACH?
      • Re: (Score:3, Insightful)

        by geekoid ( 135745 )
        People will, and probably have; but when Apple starts to allow only Apple signed software to run, then that can't do much.

        This course will cause Apple to loose what they have gained in the last 5 years.
  • by Anonymous Coward on Tuesday January 22, 2008 @05:36PM (#22145482)
    You of all people should know that you give up your freedom to use your software and hardware as you wish when you use proprietary software. Apple's continuous attempt to stop people from changing software on their home computers is a good example of how they feel about freedom. They only side with freedom when it is immediately beneficial.
  • by Quiet_Desperation ( 858215 ) on Tuesday January 22, 2008 @05:40PM (#22145546)
    Is "egalitarian" the Slashdot word of the day today?
  • by Malevolent Tester ( 1201209 ) * on Tuesday January 22, 2008 @05:40PM (#22145560) Journal
    Fuck me, it's like a Student Union bar in here. What next, comrades, do we storm the Winter Palace or just go and sell some copies of Socialist Worker?
    • it's kdawson day (Score:3, Interesting)

      by Quadraginta ( 902985 )
      It's like this every time kdawson takes a turn posting stuff to the front page. Wish he'd join up with his natural comrades at digg.com and take the tired rewarmed leftovers of 19th and 20th century politics away with him.
    • Re: (Score:3, Funny)

      by martinX ( 672498 )
      I say we hold a meeting to draft a resolution. Brian, you take the minutes.
  • by Stanistani ( 808333 ) on Tuesday January 22, 2008 @05:45PM (#22145660) Homepage Journal
    Quote:
    "So Apple is explicitly preventing DTrace from examining or recording data for processes which don't permit tracing. This is antithetical to the notion of systemic tracing, antithetical to the goals of DTrace, and antithetical to the spirit of open source."

    Diagnostic tool that won't look at all processes is no tool at all.
  • by aberkvam ( 109205 ) <aberkvam@berq[ ]com ['ue.' in gap]> on Tuesday January 22, 2008 @05:49PM (#22145736) Homepage
    The article says, "To say that Apple has crippled DTrace on Mac OS X would be a bit alarmist..." So what is the Slashdot headline? "Apple Crippled Its DTrace Port"

    Nice...
  • by mzs ( 595629 ) on Tuesday January 22, 2008 @05:50PM (#22145738)
    Basically profile and tick are useless since they will not fire if a thread with PT_DENY_ATTACH is on proc. Perfectly good DTrace scripts simply will not work correctly on OS X.
  • One question: (Score:4, Interesting)

    by MsGeek ( 162936 ) on Tuesday January 22, 2008 @06:01PM (#22145916) Homepage Journal
    Isn't this a F/OSS program? Couldn't you just recompile an uncompromised version of the source?
    • Re:One question: (Score:5, Informative)

      by statusbar ( 314703 ) <jeffk@statusbar.com> on Tuesday January 22, 2008 @07:10PM (#22146846) Homepage Journal

      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++

      • Re:One question: (Score:5, Insightful)

        by wyldeone ( 785673 ) on Wednesday January 23, 2008 @12:38AM (#22149782) Homepage Journal
        You've (like many) completely misunderstood the point of Apple's code signing efforts. It's not to stop unauthorized code from running--Apple is not Microsoft, no matter how you cut it; they don't even have activation, nor any protections on their software besides serial numbers. The real point of code signing is so that when you have a piece of software that claims to be from Company X, you can be sure it's actually from Company X. It's a tool to reduce malware pretending to be legitimate software, not a means for Apple to lock down your computer.
  • So what? (Score:3, Insightful)

    by gilesjuk ( 604902 ) <giles.jonesNO@SPAMzen.co.uk> on Tuesday January 22, 2008 @06:08PM (#22145994)
    I've never seen Apple market OSX as a Unix system or even talk about the shell.

    Its main market is for an easy to use home computer and as a creative platform for video editing, graphic design and professional audio.

    If you want a command line you're fully in control of, use Linux or a BSD Unix.

    It's a commercial OS and Apple will do what they like so long as its legal.
    • They did advertise Leopard as "Unix certified".... (or something like that)
      but no, they don't flaunt the cli to most people.... (at least not in marketing rags or anything I've seen..)

    • Re:So what? (Score:4, Informative)

      by SanityInAnarchy ( 655584 ) <ninja@slaphack.com> on Tuesday January 22, 2008 @06:25PM (#22146258) Journal

      I've never seen Apple market OSX as a Unix system or even talk about the shell.

      You obviously didn't look very hard. [apple.com]

      Its main market is for an easy to use home computer and as a creative platform for video editing, graphic design and professional audio.

      And software development. Or where did you think the developers of those video editors work and test their code?

      If you want a command line you're fully in control of, use Linux or a BSD Unix.

      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.

      It's a commercial OS and Apple will do what they like so long as its legal.

      Why is this OK?

    • Re: (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.

  • by aberkvam ( 109205 ) <aberkvam@berq[ ]com ['ue.' in gap]> on Tuesday January 22, 2008 @06:10PM (#22146036) Homepage
    The /. summary and most of the /. posters seem to be missing the point of the article. (To be fair, the author wasn't too clear himself. He's done some clarification in the comments section of his article.)

    Sure, it's annoying that DTrace can't "see" iTunes. But that's more of a DRM issue. Whether you agree with DRM and Apple's implementation of it or not, this DTrace feature is merely a logical extension of that issue.

    The real problem though is that this feature actually does break iTunes. If DTrace probes while the iTunes application happens to be the application currently running on the CPU, the DTrace probe won't run. (It's technically a thread of iTunes' at that moment.) So not only will DTrace not show iTunes, it won't show ANY information until it happens to fire off when iTunes isn't the app running on the CPU.

    It is fair to say that Apple has made a change to DTrace that has introduced a bug that they need to fix. It is possible for them to fix that bug while continuing to block using DTrace on iTunes.
    • by aberkvam ( 109205 ) <aberkvam@berq[ ]com ['ue.' in gap]> on Tuesday January 22, 2008 @06:18PM (#22146160) Homepage
      Doh! "this feature actually does break iTunes" should have been "this feature actually does break DTrace". My bad.
    • Re: (Score:3, Interesting)

      by jeff4747 ( 256583 )

      The real problem though is that this feature actually does break DTrace. If DTrace probes while the iTunes application happens to be the application currently running on the CPU, the DTrace probe won't run.

      In what situation is this a problem if you are not probing iTunes? If you're trying to get info from another program, iTunes won't be the application currently runing on the CPU when the event happens.

  • If I make a third party app that and Apple allows my app to be traced and reverse engineered when they don't allow it for their own apps, does that mean they've chosen to assist in the reverse engineering of my app? If tracing is bad for their app, why is it ok with mine? Just asking? Could a court ask them?
  • So? (Score:5, Insightful)

    by Plekto ( 1018050 ) on Tuesday January 22, 2008 @06:23PM (#22146228)
    I just don't see what the big deal with all of this is. Smart people don't touch ITunes, because it's just going to help feed the beast. People seem to have forgotten how Jobs ran Apple the last time he was in charge. He's merely a lot more charismatic than Gates. But they are both equally self-serving.

    Thankfully there are options which involve neither company.
  • One step back (Score:5, Interesting)

    by bdgregg ( 744616 ) on Tuesday January 22, 2008 @06:40PM (#22146492) Homepage

    Yes, it's annoying - every time we examine the system we are now looking at everything except for iTunes (and possibly Spy-WaR3 ;-). But this issue is about more than just that.

    I've introduced DTrace to many companies. While most people love it, some developers of closed source software are concerned about people DTracing their code. DTrace allows customers to gather proof of bugs that are embarrassing, hard to fix, or that the developers have deny existed. I've been asked many times if DTrace can be disabled for an application, usually to avoid negative publicity from the bugs that DTrace will expose. The answer has always been no. It's been great to see developers accept this reality and escelate bug fixing.

    This is expected - DTrace visibility should improve overall code quality in IT. Hopefully it will also encourage employers to hire better programmers - since if customers don't use DTrace to point out embarassing bugs, then competitors may. It also erodes reasons to stay closed source - customers can use DTrace to see the code anyway.

    Giving developers another option, to disable DTrace visibility, is allowing a backwards step from the future.

  • by Slashcrap ( 869349 ) on Tuesday January 22, 2008 @07:06PM (#22146804)
    It's a real shame that you can't trace iTunes. I was all set to reverse engineer it and use the code to make my own total fucking abortion of a media player. Now I'll have to settle for grafting a horrible GUI onto Mplayer, removing most of the supported formats and making it sleep without releasing the CPU 90% of the time. If I can work out some way to reliably fuck up the contents of the user's iPod, then I doubt anyone will notice the difference.

    It will be tricky to make the Windows port twice as horrible though. Maybe I can get it to punch the user in the face every ten minutes?
  • Wow (Score:4, Informative)

    by Lally Singh ( 3427 ) on Tuesday January 22, 2008 @07:25PM (#22147020) Journal
    Mac haters really are drama queens, aren't they? Here, read this [steike.com].

    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:Wow (Score:5, Informative)

      by ahl_at_sun ( 853337 ) on Tuesday January 22, 2008 @08:20PM (#22147630) Homepage

      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.

    • Re:Wow (Score:4, Insightful)

      by jvkjvk ( 102057 ) on Tuesday January 22, 2008 @09:35PM (#22148376)

      Mac haters really are drama queens, aren't they? Here, read this.

      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.
      Why are you standing up for Apple in this? By your own admission, DTrace is broken (oh yes, you can get around it, Bah!) Why in the world should you have to do any of that!

      DTrace is a system level tool that should work properly on any and every process and thread in the system without smoke and mirrors.

      Leopard's DTrace is broken. It does not do what it should.

      There's no hating or drama about it. I don't care why they did it, and you're probably right that DRM is the reason. That doesn't mean it's not fubar'd.
       
  • by Count Sessine ( 1135193 ) on Tuesday January 22, 2008 @08:24PM (#22147674)
    The best thing to do now is to make DTrace as useless as possible until Apple removes this limitation.

    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)

    by ed.markovich ( 1118143 ) on Tuesday January 22, 2008 @08:24PM (#22147678) Homepage
    Maybe everyone knows what dtrace is. I didn't. Then I watched this: link [google.com] and now I do.
  • Old is New Again (Score:5, Informative)

    by HumanEmulator ( 1062440 ) on Wednesday January 23, 2008 @03:55AM (#22150768)

    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.

PURGE COMPLETE.

Working...