PowerPC Applications Crash on Launch on Intel Mac's

Revised: 2006-09-21 richard

Introduction

As of Mac OS X 10.4.7, there is a bug with Rosetta running on Intel Mac's, where sometimes PowerPC applications , such as Word or Photoshop would crash on launch. There are a couple of workarounds the issue, one restarting the Intel Mac or killing the process called translated.

If you are experiencing this issue, you  will probably get a crash log with the following text...

EXC_BAD_ACCESS (0x0001)
KERN_INVALID_ADDRESS (0x0001) at 0xffdff1e0

Thread 0 Crashed:
0    0xb8000000 + 504121
1    0xb8000000 + 586874
2    spin_lock_wrapper + 4852

Background

Rosetta is a lightweight dynamic translator for Mac OS X distributed by Apple. It enables applications compiled for the PowerPC family of processors to run on Apple systems that use Intel processors. It is based on Transitive Corporation's QuickTransit technology. It is a key part of Apple's strategy for the transition of their Macintosh line from PowerPC to Intel processors, enabling pre-existing Mac OS X software to run on the new platform without modification. The name is a reference to the Rosetta stone, whose discovery made it possible to comprehend and translate Egyptian hieroglyphs.

Rosetta is included, pre-installed with the operating system, on Macintosh computers that use Intel's Core processors. It translates G3, G4, AltiVec, and OpenGL instructions, but it does not translate software that requires the G5-specific features of later Apple systems; such applications have to be modified by their developers to work on Intel-based Macintoshes. However, there are very few applications that strictly require the G5 processor, so compatibility with most applications is possible.

Rosetta's implementation consists of a program (/usr/libexec/oah/translate), a daemon (/usr/libexec/oah/translated), a collection of library & framework shims (/usr/libexec/oah/Shims/*), and support in the kernel, which has explicit knowledge of the translate program.

$ sysctl kern.exec.archhandler.powerpc # read-only variable
kern.exec.archhandler.powerpc: /usr/libexec/oah/translate

$ strings /mach_kernel
...
/usr/libexec/oah/translate
...

The translate program can also be used from the command line to run programs under Rosetta.

Restart Intel Mac

One solution is simply restarting the Intel Mac that you are having a crashing problem launching PowerPC applications.

Login Window
At the Login Window, enter ">restart" and click login. This will restart the Mac.

Login Window - >restart

Apple Menu
If you or a user is logged in with an account, simply select "Restart"  from the Apple Menu.

Apple Menu - Restart...

kill translated Process

Another solution is to run the following command at terminal:

sudo killall translated

Or send via Apple Remote Desktop's Send Unix Command...

Apple Remote Desktop - killall translated

Note, killing the "translated" process didn't appear to impact any currently launched PowerPC applications in my limit testing. For example, we had a class that Photoshope CS2 would continually crash on launch, but users could launch and most had open Dreamweaver MX. Using Apple Remote Desktop's Send Unix Command.., I sent  "killall translated" command and this didn't appear to effect the currently active "Dreamweaver MX", but fixed the launch crash issue with Photoshop CS2.