- Rosetta (binary translation software)
Infobox_Software | name = Rosetta
caption = PowerPC application (Microsoft Word for Mac 2004) running on OS X for Intel
Mac OS X
PowerPC binary translation
website = http://www.apple.com/rosetta
Rosetta is a lightweight dynamic translator for
Mac OS Xdistributed by Apple. It enables applications compiled for the PowerPCfamily of processors to run on Apple systems that use Intelprocessors. Rosetta is based on Transitive Corporation's QuickTransittechnology [cite web | url=http://news.com.com/The+brains+behind+Apples+Rosetta+Transitive/2100-1016_3-5736190.html | title=The brains behind Apple's Rosetta: Transitive | publisher=CNET News.com | accessdate=2007-07-04] , and it is a key part of Apple's strategy for the transition of their Macintosh line from PowerPC to Intel processors as it enables pre-existing Mac OS X software to run on the new platform without modification. The name is likely a reference to the Rosetta Stone, whose discovery made it possible to comprehend and translate Egyptian hieroglyphs. Rosetta was formerly the code name for the handwriting recognition engine in the Apple NewtonPDA. [http://query.nytimes.com/gst/fullpage.html?res=9902EEDB1539F930A25752C1A963958260&sec=&spon=&pagewanted=all]
Rosetta has no
GUI, leading Apple to describe Rosetta as "the most amazing software you'll never see". [cite web | url=http://www.apple.com/uk/rosetta/ | title=Apple (UK and Ireland) - Rosetta | publisher=Apple | accessdate=2007-08-25]
Rosetta is part of the Mac OS X for Intel operating system. It translates G3, G4 and
AltiVecinstructions; however, it does not translate G5 instructions. Therefore applications that rely on G5-specific instruction sets must be modified by their developers to work on Intel-based Macs.
According to Apple, applications with heavy user interaction but low computational needs (such as
word processors) are well suited to translation via Rosetta, while applications with high computational needs (such as raytracers or Photoshop) are not [cite web | url=http://developer.apple.com/documentation/MacOSX/Conceptual/universal_binary/universal_binary_exec_a/chapter_950_section_1.html | title=Rosetta | work=Universal Binary Programming Guidelines, Second Edition | publisher=Apple | accessdate=2007-07-04] . Pre-existing PowerPC versions of Apple "Pro" media-production applications (such as Final Cut, Motion, Aperture and Logic Pro, et al) are not supported by Rosetta, and require a [http://www.apple.com/r/store/universal/ "crossgrade"] to a universal binaryversion to work on Intel-based Macs.
In general, Rosetta does "not" run the following [cite web
title=What Can Be Translated?
work=Universal Binary Programming Guidelines, Second Edition
*The Classic environment, and thus anything built for
Mac OS 9or below.
*Code that inserts preferences into the System Preferences pane.
*Applications that require a G5 processor.
*Kernel extensions, and applications that depend on them.
*Bundled Java applications or Java applications with JNI libraries that can’t be translated.
*Java applets in Rosetta-translated applications. That means a PowerPC-only web browser application (such as Microsoft's legacy
Internet Explorer for Mac) will not be able to load Java applets; an Intel-ready browser is needed (such as Safari, Camino, Firefox or Opera from version 9 and on).
The reasons for Rosetta’s lesser capabilities as compared with Apple’s earlier 68k emulator for PPCs lie within its implementation - Rosetta is merely a userland program that can only intercept and emulate userland code while the older emulator was integrated with the system at a much lower level.
The 68k emulator was given access to the very lowest levels of the OS by being at the same level as, and tightly connected to, the
Mac OS nanokernelon PPC Macs (later used for multiprocessing under Mac OS 8.6 and later too), which means that the nanokernel was able to intercept PowerPC interrupts, translate them to 68k interrupts, then doing a mixed mode switch, if necessary, and then executing 68k code to handle the interrupts. This even allowed lines of 68k and PPC code to be mixed within the same source file of a fat application.
While a similar effect could likely have been achieved for Mac OS X by running Rosetta within
XNU, Apple instead chose to implement Rosetta as a userland process to avoid troublesome debugging and the potential for security holes.
Mac 68K emulator- lower level program used for a similar purpose during 680x0to PowerPCtransition.
Universal binary- combined PPC/Intel applications that run natively on both processors.
Fat binary- combined PPC/68k application that ran on older Macintoshes.
* [http://developer.apple.com/documentation/MacOSX/Conceptual/universal_binary/universal_binary.pdf Apple Universal Binary Programming Guidelines]
* [http://www.apple.com/pr/library/2005/jun/06intel.html Apple press release]
* [http://www.transitive.com/ Transitive Corporation web site]
* [http://guide.apple.com/action.lasso?-database=MacOSGuide&-layout=cgi_search&-response=/ussearch/hitlist_universal.html&-op=bw&binaries=Universal&-maxRecords=20&-search Apple's list of Universal Applications]
* [http://wiki.osx86project.org/wiki/index.php/X86_software List of Universal Binary Applications at osx86project.org]
* [http://guides.macrumors.com/Rosetta_incompatibilities Rosetta compatibility index]
Wikimedia Foundation. 2010.
Look at other dictionaries:
Binary translation — In computing, binary translation is the emulation of one instruction set by another through translation of code. Sequences of instructions are translated from the source to the target instruction set.There is static binary translation, where an… … Wikipedia
Rosetta (disambiguation) — Rosetta may refer to:As a placename: * Rosetta, the anglicised name of the city of Rashid, Egypt, famous as the location of the Rosetta Stone * Rosetta, Tasmania, suburb of Hobart, Tasmania, Australia * Rosetta, Belfast in Northern IrelandAs a… … Wikipedia
Classic Environment — Mac OS Classic redirects here. For classic versions of Mac OS, see Mac OS. Classic Environment Classic OS applications running alongside native Mac OS X applications. Developer(s) Apple Inc. (formerly Apple Computer, Inc.) … Wikipedia
Classic (Mac OS X) — Classic s performance is also generally acceptable, with a few exceptions. Most of an application is run directly as PowerPC code. (This is likely a major reason why Classic is not supported on Intel based Macs.) Motorola 68k code is handled by… … Wikipedia
Transitive Corp. — Transitive Corporation is a software company providing solutions that allow the transportability of software applications across multiple hardware platforms. The company’s QuickTransit cross platform virtualization solution allows software… … Wikipedia
Mac OS X — OSX redirects here. For other uses, see OSX (disambiguation). Mac OS X … Wikipedia
Mac OS X Tiger — Mac OS X v10.4 Tiger Part of the Mac OS X family … Wikipedia
Backward compatibility — In the context of telecommunications and computing, a device or technology is said to be backward or downward compatible if it can work with input generated by an older device. If products designed for the new standard can receive, read, view… … Wikipedia
Lx86 — PowerVM Lx86, formerly known as System p AVE , is a binary translation layer for IBM s System p servers. It enables 32 bit x86 Linux binaries to run unmodified on the Power Architecture based hardware. IBM is relying on this feature to migrate… … Wikipedia
Dynamic recompilation — In computer science, dynamic recompilation (sometimes abbreviated to dynarec or the pseudo acronym DRC) is a feature of some emulators and virtual machines, where the system may recompile some part of a program during execution. By compiling… … Wikipedia