다음을 통해 공유


Thoughts on Apple on Intel rumors

Rumors are flying that Apple will announce a switch to Intel processors on Monday. This wouldn't surprise me much. I think Apple hates being dependent on IBM for processor advances, which are critical for them to be competitive. Apple has successfully made it through a couple of other large jumps like this - first from 68k processors to the PowerPC, and from Mac OS 9 to Mac OS X.

The timing seems pretty good. When there were rumors about this a couple of years ago, it was just after developers had spent a bunch of time and money upgrading their applications to run on MacOS X by carbonizing them or rewriting them. It would be really tough on developers to ask them to turn around and do the Intel work (meaning they have no time for feature work). Customers don't really appreciate the huge amount of work that can go into changes like this and don't like to spend money on an upgrade that just makes an application run like it used to, but on an updated platform.

One of the technical hurdles for many applications will be the the difference in endian-ness between the two processors. Say you have a 2-byte variable with the number 1 stored in it. On a PowerPC processor, the first byte in memory will be 0 and the second byte will be 1. On an Intel processor, this is flipped around. So, if an application writes binary data to a file, the developers will need to do work to swap bytes around as it reads/writes. As another example, Unicode strings are made up of two-byte characters and are typically put onto the clipboard with big endian (PowerPC) byte layout. Applications will have to figure out the byte order and swap if necessary. Luckily, Unicode has a standard mechanism to help with this problem - a byte order mark at the beginning of the string. There are a few factors that will help out with the file format issue:

  • XML has been taking off as a popular file format, which doesn't have endian issues, except in any embedded binary data.
  • Many of the big applications are cross platform already and have probably dealt with the endian issues to some degree.
  • Cocoa apps can rely on Cocoa to serialize data, and Apple can do the endian work so developers don't have to worry about it at all. 

There's also the obvious problem that code written in PPC assembly won't work. However, I don't think there's a whole lot of that around any more. Virtual PC is one of the biggest exceptions I can think of, but that's a whole 'nother story :-)

When Apple switched to the PowerPC chips, Apple failed to provide good tools to developers, and Metrowerks appeared to save the day with an awesome new Mac development environment with great PowerPC support. Over the last few years, Apple has been putting more and more effort into powerful free development tools for the Mac, driving people away from Metrowerks. I wonder if this change will be the nail in Metrowerks coffin... That would be too bad.

Isn't it interesting times when the X-box is moving to PowerPC and Apple is moving to Intel?

Comments

  • Anonymous
    June 04, 2005
    I'm personally disappointed that there's no rumors of Apple in talks with AMD. Currently they're the leader in 64-bit procs as it is... I don't see why they'd want to go with intel unless because of their production facilities they would be able to pump out more and cheaper lower-grade 64-bit procs than AMD... which I suppose is plausible.. but you'd think they'd want to support someone who's not necessarily a MS lapdog.
  • Anonymous
    June 04, 2005
    The comment has been removed
  • Anonymous
    June 04, 2005
    I doubt very very much they will move to intel.
    The PowerPC is an incredibly efficient architecture, much more than the x86.

    Theres the endian issues, the fact that G5 is fully 64 bit (and 32 bit), they have full 64 bit support in the OS, and that IBM & co is bringing out cell soon. If anything I'd expect them to move up to cell.
  • Anonymous
    June 04, 2005
    The OS does not have full 64-bit support. I posted on this previously: http://blogs.msdn.com/dancre/archive/2004/12/23/331632.aspx

    With regards to AMD, in my opinion, it doesn't matter so much who they intially go with. They can fairly easily switch later.

    Knowing Apple, if they announce, they'll probably go along with some suprise announcements from Intel.
  • Anonymous
    June 04, 2005
    The comment has been removed
  • Anonymous
    June 07, 2005
    So it's official; Apple's going with Intel chips. As far as I can tell, Steve Jobs gave the virtual finger to the big ISVs right there in the keynote:
    "Carbon Apps --Metroweks -- Jobs says to transfer to Xcode."
    http://www4.macnn.com/macnn/wwdc/05/

    Still, I think this is a great opportunity for Microsoft to get their apps running on Macs.
    http://blog.360.yahoo.com/blog-0ZFmUbk1erC6prHGUJbW_UclZ3O1Sw--?p=81
  • Anonymous
    June 07, 2005
    Yeah, and this was just posted: http://developer.apple.com/documentation/DeveloperTools/Conceptual/MovingProjectsToXcode/index.html
  • Anonymous
    June 09, 2005
    The comment has been removed
  • Anonymous
    June 02, 2007
    The comment has been removed