Unlike Microsoft’s Windows, Apple’s Mac OS X does 64-bit right

“Even with the 64-bit Power Mac G5 hardware, there were still software limitations in 2003’s Mac OS X Panther; the 32-bit OS allowed the system to support more than 4GB of memory but still corralled each application into its own 32-bit, 4GB space. With 2005’s Mac OS X Tiger, Apple enabled desktop apps to spin off processes and servers that could handle enormous memory addressing of their own: up to a theoretical 16 EB of 64-bit virtual memory and a conceptual 42-bits or 4TB of physical RAM, although shipping Macs still could only support 8GB of RAM,” Prince McLean reports for AppleInsider.

“To enable this, Tiger supplied a 64-bit version of libsystem, the system library handling most of its Unix APIs. This followed the LP64 model to allow broad compatibility with 64-bit versions of Linux and commercial Unix. It also delivered a 64-bit PowerPC ABI (application binary interface) for accommodating native 64-bit apps on the G5. Tiger still used a 32-bit kernel (although it was not limited to 32-bit memory addressing, so it could actually make use of the 8GB of RAM installed in G5s), and it was also still missing a 64-bit version of the Cocoa or Carbon APIs, which meant apps with a user interface had to be 32-bit,” McLean reports.

“However, a 32-bit graphical app on Tiger could spin off a faceless 64-bit background process to perform number crunching on a vast data set requiring a 64-bit memory space, which could then communicate the results back to the 32-bit foreground app running in parallel. Apple also delivered a mechanism for deploying applications using a bundle of both 64-bit and 32-bit code, allowing the system to automatically run the appropriate version for the Mac hardware in use. Tiger itself also supplied both 32- and 64-bit underpinnings, allowing one OS to run on any Mac,” McLean reports. “This has made it easier for Apple to rapidly migrate Mac users toward 64-bit hardware.”

“When Apple began migrating to Intel in 2006 it actually had to take a step backward, as it only initially supported 32-bit Intel systems with the Core Solo and Core Duo CPUs. Apple had to cope with the same 32-bit PC limitations Microsoft had been dealing with. in the Intel transition, Mac developers lost the features supplied by PowerPC, including its liberal supply of registers. However, Intel’s new 32-bit Core Duo was fast enough in other areas to skirt around the problem, particularly in laptops where the aging G4 was holding Macs back,” McLean reports.

“By the end of the year Apple had widened support to include the 64-bit x64 PC architecture in the new Mac Pro and Xserve, and subsequent desktop Macs using the Core 2 Duo also delivered 64-bit hardware support. With updates to Tiger, Apple delivered the same level of 64-bit support for x64 Intel processors as it had for the PowerPC G5,” McLean reports. “Within the course of one year, Apple had not only adroitly moved its entire Mac product line to Intel but also paved the way forward to rapidly push its users to 64-bits, narrowly escaping the disaster of being left the last member of the desktop PowerPC party. In its spare time, the company also threw the iPhone together while also working to develop its next jump in 64-bit operating system software.”

“In contrast, a separate 64-bit version of Windows is required to run 64-bit Windows apps on 64-bit x86 PCs, and any 32-bit apps have to run in a special compatibility environment (below). There is no slick mechanism for deploying bundles of mixed code that “just work” on both architectures, and 64-bit Windows itself lacks the ability to run on either type of PC. This has had a chilling effect on the popularity of and the momentum behind 64-bit Windows that parallels the problems with Vista,” McLean reports. “Software compatibility, a lack of drivers, and other problems have also complicated the move to 64-bit Windows, leaving mainstream Windows users stuck at 32-bits. Windows 7 was initially supposed to move users to 64-bits in perhaps 2010, but reports indicate that it too will be delivered in separate 32- and 64-bit versions.”

Much more in the full article, “Road to Mac OS X 10.6 Snow Leopard: 64-Bits” — highly recommended — here.

28 Comments

  1. For those who bitch about Apple supposedly spending all their time designing the iPhone and doing nothing with the Macs….

    Yea, Apple’s been quite busy.

    Lot more than MS has.

  2. Adobe expects that Mac users will have to wait until CS5 before getting full 64-bit support. The reason for this delay is due to Apple’s abrupt dropping of Carbon 64-bit support:

  3. It sounds like a pretty ambitious program. Leave it to Apple to lead the way.

    The hell with Adobe. Their upgrade fees are virtual robbery, so I always skip a version anyway.

  4. so, vista 64 bit is the equivilent of leopard. vista 64 bit runs 32 bit apps. in the article is says it is in a compatabilty mode, but it isn’t really. it is actually just running the 32 bit application but it uses different dlls that were compiled for 32 bit. microsoft could have packaged the 32 bit code and the 64 bit code in the same dll, but they didn’t. it doesn’ t make anything inferior. Most people don’t install their os anyway, so I’m not sure why any of this matters. currently computer makers are installing vista 64 bit. the users who buy those won’t have any clue that they are using a 64 bit os since all of their apps will work the same, just like most apple users don’t know that leopard is 64 bit.

  5. Actually you don’t see that much of speed boost from 64-bit. Theoretically you could see performance boosts of up to 2X for certain computational tasks, but you definitely won’t see that for overall application performance.

    What you do achieve is the ability to address more memory, which means you can have larger applications, more applications running (with more physical RAM available), and the ability handle much larger files, which is very important to Photoshop.

    Even that will suffer from artificial limitations imposed by bus data path and register sizes.

    The good thing is that in switching to intel, Apple has made sure the Mac won’t be left behind by any slick new architectural changes that intel implements while the Mac sits around waiting for IBM to get do something, anything, with the PowerPC.

  6. this is just more proof that apple all these years and years to come have more people working on innovation with the best that’s out there, than microsoft who has more people fixing their own pile of sh*t than looking towards the future.

  7. I love the concept of a 64-bit system. I love the way Apple implemented it, and don’t like the way MS has tried to do so. But … the vast majority of what the vast majority of computer users do – including a) surfing, b) e-mail, c) games – can be done reasonably well with a mere 16 bits and quite nicely, thank you, with 32 bits. Will 64 bits make podcasting easier? Or web design? Or DTP? Or home video editing? Or home PHOTO editing?
    Would either iLife or iWork perform better with 64 bits than 32? No. Not hardly.
    Final Cut? Maybe. Logic? Maybe. FileMaker? Most likely.
    I’m glad my G5 is 64-bit capable. Gives me bragging rights. And I’m glad to have a dual processor. But, last night iDVD was taking ~130% of my CPUs (2×65%) and there was unused capacity left sitting around. For HOURS ! ! !

  8. “64 bit is really important, because it’s snappier! . . . Really!”

    Actually, it is. But not necessarily because of it’s 64-bittedness.

    Intel’s 64-bit CPUs, such as Core 2 Duo and Xeon line, have some capabilities that the 32-bit CPUs do not (I think they have more registers, but I’m not sure). The problem is that if you build code to use these registers, it won’t run on Pentium or Core Duo systems.

    So, in Apple’s world, the “switch” is 64-bit. If you use the x86-64 compilers, it will take advantage of the speed capabilities of the 64-bit chips. So even if you have, say, 3GB of RAM on a Core 2 Duo, running a 64-bit application will be snappier than running a 32-bit application.

    I believe the first generation of Macs from early 2006 used to the Core Duo, which is 32-bit only.

  9. @applejack,
    64bit is not always snappier. It depends on the requirements of the program. Sometimes 64 bit can actually be slower. That is why Mac OS X 10.5 is so revolutionary, because it supports both 64 bit and 32 bit natively.

  10. I would strongly recommend that technically inclined people read the full article; it is very well written and, with just a couple points, appears to be accurate.

    One key point towards the end of the article needs clarification: The chart indicates that Snow Leopard will be able to run 32-bit Carbon and Cocoa applications, but the text of the article is less clear, and implies that existing software will need to be recompiled for 64-bit. I doubt that is true given the architecture of Snow Leopard.

    One remaining problem for Apple are the millions of first-gen Mactel machines running Core Duo and Core Solo. Those were 32-bit systems and exception routines will be needed to run Snow Leopard on them.

  11. I need a badass tower for X-Plane with three screens because some windoze planemakers are still making cockpits to fit square screens. I just can’t get over that. How square can you get!!??

    64-bit? Ooh yeah!

  12. As Peter pointed out, 32 to 64 bit in a from the ground up well-designed CPU does not lead to much of performace gain (PPC, POWER, SPARC, MIPS and so on).

    But Intel’s x86 design is different. The x86 design is old and due to backwards compatibility drags on (among other problems) few (only 8) registers and a complex addressing design. The x86-ia64 has two times more ALU registers than the plain x86 (x86-ia32). Also, other paths as well as the SSE parts and others are enhanced. That in itself, together with good compilers (and Intel compilers are absolutely top-notch) makes all the difference. So, even iPhoto, TextEdit and other “low” programs will likely see a performace gain.

    So, running a core2 or Xeon in 64-bit mode does clearly give performance benefits.

  13. Blah Blah Blah, 64 bit who cares. It’s slower when the addressing space is not needed. There are more 64 bit Windows installations for those who actually care about it than all Macs in existence. Apple 64 bit is a non working hack. Microsoft got it right.

  14. @DLMeyer: Apple is not as concerned about iLife as it is about its’ ProApps. FCP, DVD StudioPro, Motion and Shake (especially) will definitely benefit. iDVD is nothing compared to Pro. You don’t know from waiting until a three machine render farm still takes 14 hours to compress and render a standard DVD.

    Hollywood types need the space afforded by 64 bit. And lest anyone think that Photoshop is the end-all-be-all of resource intensive apps I suggest you take those same gig-and-a-half-200-layer images and process them further by doing some serious compositing in either Shake or Adobe After Effects. You’ll never look at your PS files the same way again. Create a simple video wall at standard res with a hundred screens, multiple filters and effects, add camera motion and lighting and hit render. It’s the only thing that ever killed my maxed-out Macbook (I was trying to choke it actually just to see what the threshold was) and forced an upgrade to a tower. Definitely looking forward to Snow Leopard once all the corresponding apps have also been upgraded (about $23K total).

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.