Universal Binary

A universal binary is, in Apple parlance, an executable file or application bundle that runs natively on either PowerPC or Intel-manufactured IA-32 or Intel 64-based Macintosh computers; it is an implementation of the concept more generally known as a fat binary.

With the release of Mac OS X Snow Leopard, and before that, since the move to 64-bit architectures in general, some software publishers such as Mozilla have used the term Universal to refer to a fat binary that includes tailored builds for both i386 (32-bit Intel) and x86_64 systems. The same mechanism which is used to select between the custom PowerPC or Intel builds of an application, is also used to select between the 32-bit or 64-bit builds of either PowerPC or Intel architectures.

Apple, however, continues to require native compatibility with both PowerPC and Intel in order to grant third-party software publishers permission to use Apple's trademarks related to Universal binaries. At the same time, Apple does not specify whether or not such third-party software publishers must (or should) bundle separate builds for both the 32-bit and 64-bit variants of either architecture.

The universal binary format was introduced at the 2005 Apple Worldwide Developers Conference as a means to ease the transition from the existing PowerPC architecture to systems based on Intel processors, which began shipping in 2006. Universal binaries typically include both PowerPC and x86 versions of a compiled application. The operating system detects a universal binary by its header, and executes the appropriate section for the architecture in use. This allows the application to run natively on any supported architecture, with no negative performance impact beyond an increase in the storage space taken up by the larger binary.

Starting with Mac OS X Snow Leopard, only Intel-based Macs are supported, so software that specifically depends upon capabilities present only in OS X 10.6 or newer no longer require Intel/PPC fat binaries. Additionally, starting with Mac OS X Lion, only 64-bit Intel Macs are supported; therefore, software that specifically depends on new features in Mac OS X 10.7 or newer no longer require 32-bit/64-bit fat binaries. Presently, fat binaries would only be necessary for software that is designed to have backward compatibility with older versions of Mac OS X running on older hardware.

Read more about Universal Binary:  Motivation, History, Universal Applications, Identifying Universal Binaries

Famous quotes containing the word universal:

    It is impossible that anything so natural, so necessary, and so universal as death should ever have been designed by Providence as an evil to mankind.
    Jonathan Swift (1667–1745)