Tuesday, March 2, 2010

Apple - Intel Transition

In April 2002, eWeek reported a rumor that Apple had a version of Mac OS X code-named Marklar which ran on Intel x86 processors. The idea behind Marklar was to keep Mac OS X running on an alternative platform should Apple become dissatisfied with the progress of the PowerPC platform. These rumors subsided until late in May 2005, when various media outlets, such as the Wall Street Journal and CNET, reported that Apple would unveil Marklar in the coming months.

On June 6, 2005, Steve Jobs confirmed these rumors when he announced in his keynote address at the annual Apple Worldwide Developers Conference that Apple would be making the transition from PowerPC to Intel processors over the following two years, and that Mac OS X would support both platforms during the transition. Jobs also confirmed rumors that Apple has had versions of Mac OS X running on Intel processors for most of its developmental life. The last time that Apple switched CPU families—from the Motorola 68K CPU to the IBM/Motorola PowerPC—Apple included a Motorola 68K emulator in the new OS that made almost all 68K software work automatically on the new hardware. Apple had supported the 68K emulator for 11 years, but stopped supporting it during the transition to Intel CPUs. Included in the new OS for the Intel-based Macs is Rosetta, a binary translation layer which enables software compiled for PowerPC Mac OS X to run on Intel Mac OS X machines. However, Apple dropped support for Classic mode on the new Intel Macs. Third party emulation software such as Mini vMac, Basilisk II and SheepShaver provides support for some early versions of Mac OS. A new version of Xcode and the underlying command-line compilers support building universal binaries that will run on either architecture.

Software that is available only for PowerPC is supported with Rosetta, though applications may have to be rewritten to run properly on the newer OS X for Intel. Apple encourages developers to produce universal binaries with support for both PowerPC and x86. There is a performance penalty when PowerPC binaries run on Intel Macs through Rosetta. Moreover, some PowerPC software, such as kernel extensions and System Preferences plugins, are not supported on Intel Macs. Some PowerPC applications would not run on Intel OS X at all. Plugins for Safari need to be compiled for the same platform as Safari, so when Safari is running on Intel it requires plug-ins that have been compiled as Intel-only or universal binaries, so PowerPC-only plug-ins will not work. While Intel Macs will be able to run PowerPC, x86, and universal binaries, PowerPC Macs will support only universal and PowerPC builds.

Support for the PowerPC platform remains in Mac OS X version 10.5. Such cross-platform capability already existed in Mac OS X's lineage; Openstep was ported to many architectures, including x86, and Darwin included support for both PowerPC and x86. Although Apple stated that Mac OS X would not run on Intel-based personal computers aside from its own, a hacked version of the OS compatible with conventional x86 hardware has been developed by the OSx86 community.

On June 8, 2009, Apple announced at its Worldwide Developers Conference that Snow Leopard (version 10.6) would drop support for PowerPC processors and be Intel-only. However, Rosetta is still supported. In Snow Leopard, Rosetta is not installed by default, but it is available on the installation DVD as an installable add-on.

No comments:

Post a Comment