Owners of Intel-based Macintosh computers are still waiting for versions of many of their favorite applications that are built for the new hardware. Although Apple's code translation technology is a marvel, it's no substitute for software that runs natively on the x86 platform. But Mac owners will soon have a new source of professional-grade, commercial software for their beloved machines. The catch is that the software was meant to run on Windows.
Forget Boot Camp. Booting Windows on Apple hardware is an interesting sleight of hand, but this is different. What CodeWeavers is offering is the ability to actually run Windows applications from within Mac OS X. CodeWeavers' commercial product, CrossOver Office, is based on the open source Wine project, technology that has made it possible to run many Windows applications on Linux systems for almost 10 years. By early August, it will do the same for Mac OS X with CrossOver Mac.
Earlier Macs could run Windows software only with the help of Virtual PC, a Microsoft product that completely emulates the x86 platform environment on Apple's PowerPC hardware. Wine works differently. Because it runs on Intel hardware, it doesn't have to virtualize the environment the way Virtual PC does -- which means it doesn't have Virtual PC's overhead. Instead, Wine merely offers a custom implementation of the Windows APIs that translates Windows system calls into native ones. From the application's point of view, Wine makes the underlying OS look like Windows.
This is an incredible piece of engineering, representing years of hard work on the part of the Wine developers. And believe you me, there's no love lost between Microsoft and the Wine project. Microsoft no more wants Wine to work on the Mac OS than it wanted it to work on Linux.
And that's the real shame of it. Although it's great that Mac owners will soon be able to work with Microsoft Access databases and lay plans with Microsoft Project without having to install a full-blown copy of Windows, I can't imagine a worse scenario than having to use a translation layer to run Microsoft's proprietary software on Apple's proprietary OS. CrossOver Office outperforms Virtual PC and allows users to forego the cost of a Windows license. But in other respects, it's every bit as much a step down, if you look at it from an open source perspective.
The idea of using a translation layer to make software compiled for one OS work on another isn't really new. FreeBSD has had Linux binary compatibility for a while, and Sun provides similar capabilities for Solaris as well, with its Project Janus. Running Linux binaries under Project Janus means the Linux software gains the advantages of advanced Solaris features, such as Containers. The thing is, most users won't ever need to.