TweetFollow Us on Twitter

Found in Transition

Volume Number: 22 (2006)
Issue Number: 5
Column Tag: Open Source

The Source Hound

Found in Transition

by Dean Shavit

Windows and Mac, sitting in a tree...

The MacBook Pro Arrives

When my brand-spanking-new built-to-order MacBook Pro arrived, I immediately went about the task of making it my own. My 12-inch PowerBook G4 1.33 had been my test bed for most of the MacTech articles for the last year and a half, so preparing the MacBook was somewhat like moving into a new apartment or breaking in a new car or pair of shoes, something I would have to live/walk in for the foreseeable future, and because it's such a radical change in processor architecture and software support, it was somewhat like learning how to walk again for the very first time, or drive, or tie my shoes.

The MacBook isn't that radical of a shift for the typical end-user who'd use it for day-to-day word processing, web browsing, and light graphics work. iLife '06, iWork '06, Safari, and Mail all scream running natively on the MacBook's Core Duo 2 ghz processors. An Intel Mac is a different kind of fast. It's difficult to explain, but certain operations just feel faster (especially launching applications and booting the Mac), and as unscientific as that sounds, comparing the MacBook to, let's say, a Dual 2ghz PowerPC G5 is like trying to ascertain the difference between two different brands of whiskey. However, for an Open-Source aficionado, it means rebuilding my entire installed base of X Windows and command-line software ports (currently four gigs worth) using Xcode's GCC 4.0 compiler and package managers such as Fink <http://fink.sourceforge.net> and Darwinports <http://darwinports.opendarwin.org>, and facing the fact that many of the projects I relied on for the PPC processor where now either broken or "back in beta" for the Intel processor. Needless to say, things aren't quite at the level of maturity they'd be if Apple had waited until June to release the Intel MacBooks after having just finished another major transition (Tiger), but the work on converting those Open-Source super-projects to the Intel platform had already begun in earnest. Many Open-Source projects already compiled and run quite well on the MacBook, while others, including Growl <http://Growl.info>, the subject of my last MacTech column, are universal binaries which run on the MacBook as if they never ran on a PowerPC Mac. Those Open-Source goodies made for Mac OS X will appear as Universal applications (fat binaries) almost instantly, if not in total by the time this article is printed.



Figure 1. Universal Binary Logo

On the other hand, applications that work directly with HFS+ (a.k.a. the Mac OS Extended file system) or, at the partition-level of hard disks, have even greater challenges to supporting Intel Macs, where there's been a radical change in the hard disk partition scheme. Intel Macs now use the GPT (GUID Partition Table), instead of the older APM (Apple Partition Map). The reasons for this aren't readily obvious, but it turns out that GPT has a little surprise in store. I wouldn't expect an Intel-savvy version of Alsoft Diskwarrior or Prosoft Drive Genius any time soon, though just about every other type of Cocoa application should be Universal before too long. There's even a roadmap for Universal device drivers (kernel extensions) that would allow the same PCIe card to work in a PowerMac G5 tower as well as the upcoming Intel Pro Mac towers or new Xserves. Nifty!

In 1994, Apple, Motorola and IBM told us that RISC was fundamentally better than CISC, and that all personal computers would eventually adopt RISC, and we believed them. The interesting thing about any transition in processor architecture (the last transition was twelve years ago, in 1994 when Mac users moved from the Motorola 68000 series processors to the PowerPC processors), is that if there's a shift from CISC (complex instruction set computing) and "little endian" to RISC (reduced instruction set computing) and "big endian," then there's going to have to be some form of instruction-level emulation taking place so programs written for the previous processor can still work. For more information on endianess, visit <http://www.noveltheory.com/TechPapers/endian.asp>. Apple's solution for backward compatibility was to build a PowerPC to 68000 instruction emulator into the ROM on the logic board of each Mac, because even the Mac OS itself wasn't pure PowerPC code, though each iteration of the Classic Mac OS brought it closer to purity. Now, Rosetta ironically performs the same basic function, translating, optimizing, and caching the big-endian instructions of PowerPC applications so they can run on the little-endian Intel Macs. While we all know that "native" code is sexier, faster, and more advanced than "emulated" code, it appears that emulated software and native software are now permanent dance partners orbiting the Maypole of cyclic transitions, from little endian to big endian, and back until all turn into butter.

The idea of running another OS on your primary OS is often called a "guest" OS, which is a polite way of calling it a "parasite" OS and your primary OS the "host" OS. Essentially, the guest OS runs inside its own memory space which looks like any other application to the primary OS, and doesn't necessarily share kernel memory with the main OS (more on that later). If you want your computer to run more than one Operating System, here are ways to do it and the factors that need to be accounted for:

Method 1: Dual Boot

Dual booting is simultaneously the best and the worst way of running another OS on your computer. On the plus side, if you're going to boot into another OS, that means it's not going to require any instruction-level translation, no big endian to little endian or vice versa. That also means, the best possible performance since each OS is only active when the computer is booted into it. It also means that with the proper hardware support (drivers), that the computer should be able to network well, handle all manner of multimedia bells and whistles, as well as power management tasks such as sleep, suspend, and wake-on-LAN. Dual booting means computer labs can easily be repurposed, and that companies with both Macs and PCs can easily standardize on Apple hardware.

On the minus side, dual booting is cumbersome and doesn't provide any collaborative framework. It's simply one OS or the other and end users hate it. It's not hard to remember the annoying early days of Mac OS X and dual booting with Mac OS 9. Yuck.

Apple's Boot Camp solution <http://www.apple.com/macosx/bootcamp> is about as slick as any dual-boot arrangement that's ever existed. It allows for allocating space for Windows, resizing that partition on the fly, easy exchange of files between the Mac OS X file system and the Windows XP disk, as well as, full driver support for WiFi, Bluetooth, the infrared remote port, full multimedia, and hardware accelerated video. In short, the same driver support you'd expect to see on a computer that shipped with Windows. Sweet.

Method 2: Full Virtual Machine With or Without Emulation

This is what Virtual PC for Macintosh provides. A full virtual i386 computer with functioning hardware, multimedia, network, and USB combined with a little endian to big endian instruction emulator. Often the success of such emulators depends directly on hardware support such as the 68000 emulator used by Classic, or perhaps more pertinent to this article, the "pseudo-little-endian" mode built into G3 and G4 PowerPC processors, that was dropped from the G5, causing Microsoft to have to scramble for several months to ship a working Virtual PC for the G5 processor.

Conversely, this is what PearPC made possible for PC users, the ability to run Mac OS X in a virtual machine inside a Windows XP host. However, PearPC being an Open-Source project cannot easily live up to the high standards of hardware support that commercial products like Virtual PC consistently deliver. The advantage of a virtual machine is that everything generally acts like it would on a separate computer, accessible through a window on the host OS. This keeps "Windows-like" things separate from "Mac-like" things, and so forth. However, because the guest OS runs in a window, inside an application on the host OS, it is almost always relegated to second fiddle. Think of it as the computer version of PIP (picture in picture), but for the sake of fun we'll call it OSIOS (OS inside OS).

A VM without emulation - this is pretty much the same as the situation above, of course minus the instruction translation, and that means extra speed and possibly better hardware compatibility. However, from an end-user's perspective, it is still OSIOS.

Method 3: An "Open" Virtual Machine With or Without Emulation

An "open" virtual machine is one where the OSIOS situation has been broken down to the point where the native window manager of the host OS handles the windows for the guest OS. Classic on a PowerPC Mac is one such example, as is Darwine <http://darwine.opendarwin.org> on Mac OS X. Advantages include, decreased overhead and therefore increased performance, as well as the potential to use the same file system and exchange clipboard data.

Disadvantages include a more challenging development curve, and loss of much of the potential for hardware support that a full VM provides, as well as, the increased potential for application misbehavior when they find the environment slightly different than what they expect. Typically, open VMs are written to the "letter" of the API (Application Programming Interface) standard, and expect that applications also respect that API.

Method 4: Full-Scale Eviction of Host OS

Certain emulation products, such as VMware's ESX Server, <http://www.vmware.com/products/esx> are installed first, before even the primary OS is. As a matter of fact, EXS Server actually would take the place of Mac OS X as the host OS, relegating all other OSes, whether Windows XP or Mac OS X to guest status. While it's unlikely that ESX server will become a widely implemented solution for end-user's desktops, it will most definitely see heavy use on the next generation of Xserves (yet to be released), allowing them to run Mac OS X Server, Linux, and Windows 2003 Server simultaneously. Although VMware's products aren't currently available either as a beta or release product, company executives have publicly discussed that they are prepping a Mac OS X for Intel version, and that they have it running in their labs.

Classic: Lost in Transition

While PowerPC applications running in Rosetta are Mac OS X's new software legacy, it's obvious that Apple decided to simply cut off support for the Classic Environment partly due to the requirement of having the hardware PowerPC to 68000 emulator on the logic board of the new Intel Mac, something that probably wouldn't exactly "fit in" with the heavily Intel-engineered chipset. Also, the complexity of a two-layer Rosetta to PowerPC to 68000 emulation food chain was probably too much for Apple to support, and no doubt would be slow as molasses under the right circumstances. So, no Classic for my MacBook. However, I still need to occasionally use ResEdit (which has never been updated for Mac OS X). After all, when creating disk images for software distribution with an embedded EULA (End User License Agreement), Apple still recommends using ResEdit to embed the agreement in the disk image, even though there's other excellent and elegant solutions, such as DropDMG <http://c-command.com/dropdmg>, it would be nice to be able to use ResEdit. I also am the proud ornery owner of Apple's last great Laser Printer, the LaserWriter 8500, which can only be configured by the Apple Printer Utility, which, of course, only runs in Classic and with Appletalk, and of course there's still an occasional Classic utility or two I need to run, just to feel "connected" with my Mac past.



Figure 2. No Classic Applications Allowed.

As easy as it is to find an open-source emulator or commercial emulator to run Windows or Linux on a Mac OS X computer, it's no easy task to find a decent Classic Mac OS emulator that runs on top of an Intel processor that can support Mac OS 9.2.2 with access to all hardware resources, such as the sound manager and Open Transport. There have been several for Linux and Windows, but none have been under heavy development since the advent of Mac OS X, other than Mini Vmac, which only supports Mac OS 7.5.5 and lower, while others have been abandoned altogether. Here's the short list of possible Classic stand-ins I've found, and a quick synopsis of their current state of development: (See Table 1.)

Project             URL                                  Platforms             Mac OS Version
Mini Vmac           http://minivmac.sourceforge.net      Linux X86, Mac OS     Up to 7.5.5 with no 
(old school fun                                          X (Universal), Mac    network support.
and games)                                               OS 9 (PPC and         Sound works great. 
                                                         68000) Windows and    
                                                         Pocket PC.
    
Mac-on-Linux        http://www.maconlinux.org/         Linux PPC             Mac OS 7.5.2 to 10.3.3.
(Classic                                                                       Needs an emulator 
Environment                                                                    component. Not
for Linux PPC)                                                                 much promise here.

PearPC              http://pearpc.sourceforge.net         Windows, Platform     Will eventually run 
                                                         Independant           Mac OS 9.2.2 in a 
(The Open-                                                                     solid virtual machine,
Source Great                                                                   as it currently runs 
Hope)                                                                          Mac OS X 10.4
   
Basilisk II         http://basilisk.cebix.net/             Linux, Solaris,       Emulates a 68000
                                                         FreeBSD, IRIX,        series Mac, so it 
(O-L-D) but still                                        BeOS, AmigaOS,        won't run anything
kicking.                                                 Windows NT            above Mac OS 7.5.5.
                                                                               Has color and network
                                                                               support.
                                                                               
SheepShaver         http://sheepshaver.cebix.net/         Linux PPC, Linux      Runs up to 9.0.4 with
(Think                                                   X86, BeOS,            sound and color.
ShapeShifter,                                            Darwin/PPC            LAN support.
somewhat viable. 
Needs work.)

Mini VM

It's easy to see that many of the Classic Mac emulation solutions are pretty long in the tooth, or at least emulate versions of Classic that really old. MiniVmac emulates a Mac Plus nearly perfectly, and at an amazing speed (it's a Universal application, and includes a necessary CPU throttle to slow it down so it's useable). It also requires a hardware ROM dump from a Mac you "currently own," a tricky legalism leftover from the beige box days that must still be obeyed. MiniVmac really gets the job done, if your Classic needs are frozen at Mac OS 7.5.5. Once in a while, I'll stumble across some specialty application or display still run by a Classic Mac, such as an SE/30 or a Mac Plus. Such a setup screams for a Mac Mini, yet the current Minis have Intel inside. It's even possible to run MiniVmac off a keychain drive. As such, MiniVmac is almost a perfect solution for such a need on an Intel Mac Mini, even if sound is necessary, unless access to a network or some other type of serial-port driven controller is necessary. If that's the case, only the real thing will do. MiniVmac also features a full-screen mode, so you can work with Clarisworks 1.0 on a LCD projector! To get started with MiniVmac, visit <http://minivmac.sourceforge.net>. Getting up and running with MiniVmac is easy, there's even starter disks available.



Figure 3. MiniVmac in Action.

A Partridge in a Pear Tree

However, it's PearPC that holds out the greatest promise here, as soon as it gets the necessary virtual hardware support to run Mac OS 9. After all, it's PearPC that was the first Mac OS X on X86 solution, running the entire PowerPC install in a sloooooow emulator, all but unusable except for on the fastest PCs, which now look a whole lot like the fastest Macs. For running Classic, however, it's pretty clear that performance would be more than acceptable. As a matter of fact, because the PearPC code is platform independent, a few more tweaks could make it a serious Open-Source challenger to other commercial VMs with or without an emulator. As soon as PearPC gains OpenBios support, it will very likely boot Mac OS 9 as well as Mac OS X. Keep an eye on the action here at the PearPC community forum: <http://pearpc.net>.

Counting Sheep

As of today, the only way to emulate a Mac running OS 9 or higher on a new Mac with an Intel processor is SheepShaver, an oldie but goodie that grew out of the Basilisk II emulator project. Orginally, SheepShaver (which gets its name from "shape shifter") was to be a solution for running Mac OS Software on BeOS systems. It's an interesting historical tidbit that Gilbert Amelio once considered acquiring BeOS to replace the Classic Mac OS, but eventually settled on OpenStep, and bringing Steve Jobs back to Apple. The rest, as they say, is history. SheepShaver has survived as a little-used Classic emulator, but now with the emergence of Macs with Intel processors, it's gaining more attention. I just wish someone would make a new icon for the program! Getting started with SheepShaver starts off with a trip to: <http://www.gibix.net/dokuwiki/en:projects:sheepshaver>, where the "experimental" port to Mac OS X for Intel lives. Please note that getting SheepShaver going, currently requires access to a PowerPC Mac with Classic installed, and a Mac OS 9.0 or 9.1 install CD. Mac OS 9.2.2 is not going to work with the current port of SheepShaver.

    1. After downloading SheepShaver, download the Mac_OS_ROM_Update_1.0.smi from Apple's support site

    2. Download a copy of TomeViewer from http://macupdate.com

    3. Extract the Mac OS ROM file, using Tome Viewer

    4. Create a virgin file system using the DD command: dd if=/dev/null of=sheepshaver.img bs=1024k count=number of megabytes you want

    5. Next, you'll have to create a .sheepshaver_prefs file and populate it with the proper settings. here's the contents of mine:

      
   extfs /
   windowmodes 7
   screenmodes 0
   seriala /dev/cu.Bluetooth-Modem
   serialb /dev/null
   bootdrive 0
   bootdriver 0
   ramsize 167108864
   frameskip 8
   gfxaccel true
   nocdrom false
   nonet false
   nosound false
   nogui false
   noclipconversion false
   ignoresegv false
   pollmedia true
   jit true
   jit68k false
   keyboardtype 5
   keycodes false
   mousewheelmode 1
   mousewheellines 3
   dsp /dev/dsp
   mixer /dev/mixer
   ignoresegv false
   idlewait true
   rom /Users/dean/SS/MacOSROM
   extfs /Users/dean/SS/shared
   disk /Users/dean/SS/ss.img
   ether slirp

Make sure, all of the disk and ROM files are in the proper locations, insert a Mac OS 9 install CD, and if all goes well, SheepShaver will start up off the CD. In which case, you're going to need to format the raw disk you created, using the dd command and install Mac OS 9 onto it. If all goes well, you'll be running Mac OS 9 in no time. You'll also have access to files outside the SheepShaver VM. Just don't expect the networking to work well, and expect some (OK a lot) of System Errors.



Figure 4. Mac OS 9 Desktop from SheepShaver.

If you still rely on Classic software solutions for your day-to-day work, it's best not to give up your PowerPC-based Mac right now. Better yet, if you have a mission-critical solution such as a database that can't be easily converted to a Mac OS X version, (yes there are some out there that have no easy upgrade path), then it's probably a good idea to upgrade your hardware to brand-spanking-new PowerPC metal, while it's still available, because when they're gone, they're gone; or start a transition/migration project right now. Eventually, a solution with commercial support will appear that allows Intel Mac owners to work with Classic software, but it's most likely going to be an entire virtual machine (think Virtual PC), rather than a transparent environment sharing the Desktop like it is in the PowerPC version of Mac OS X, and might even take as long as six months before it becomes a useable solution. So, until the pears ripen or the sheep are more closely sheared, no Classic for you!

Boot Camp: Apple Does Windows!

My MacBook slices through the most complex computing tasks using the Xcode GCC compiler. It dices the most frilly web pages and roasts its PowerPC-based predecessor in sheer boot speed. But its real promise lies in the potential compatibility with Windows and Windows applications, as well as Red Hat Enterprise Server, and with virtualization products like VMWare, which would allow for multiple i386 OSes running on the same piece of hardware. When it came to running Windows, of course, the real allure of ordering an Intel-based Mac was simply "the possibilities."



Figure 5. Boot Camp Assistant.

Well, the possibility is now a reality. Apple's Boot Camp software is an official (but unsupported) public beta of a dual-boot solution that just plain works. Get the Boot Camp Public Beta installer at <http://www.apple.com/macosx/bootcamp>; it's an 83 megabyte download. To install Boot Camp, simply update your Intel-based Mac to Mac OS X 10.4.6 and apply the necessary firmware update. You also need at least 10 gigabytes of free space a blank recordable CD, and a genuine retail (not OEM) copy of Windows XP Service Pack 2, Home or Professional Edition.

First, run the Boot Camp Assistant, and use the blank CD you set aside to create a driver disk so that when you install Windows XP, all the hardware will work properly:



Figure 6. Boot Camp - Burn Driver Disk.

It's very clever how the Boot Camp Assistant prompts you to create a driver disk, so that you have it handy when it comes time to install Windows XP. Next, you'll have to decide how much space from your hard drive you want to dedicate for Windows, and Windows Software. Again, Apple couldn't have made this any easier. No reformatting required. However, a backup of critical data at this point couldn't hurt.



Figure 7. Create Boot Camp Partition.

Finally, we have the ability PC users have had for ages: the ability to split, and then resize live partitions without a reformat and backup. It seems that this is something that the new GPT (GUID Partition Format) allows for, that the venerable APM (Apple Partition Map) format didn't natively support. In checking the Disk Utility Application, I saw nothing new, but in checking the diskutil command in Mac OS X 10.4.6, I noticed something that might hint at abilities, much like the Boot Camp Assistant in future Apple OS releases:

macbook:~ dean$ diskutil
Disk Utility Tool
Utility to manage local disks and volumes.
Most options require root access to the device
Usage:  diskutil <verb> <options>
     <verb> is one of the following: 
resizeVolume  (resize a volume, increasing or decreasing its size)

Once the disk is partitioned, the next step is to start the installation of Windows XP, followed by the driver's you burned onto the CD a minute ago. Once you've successfully booted off the Windows XP installer, entered your product key, and installed the drivers from the disk, you're ready to rock and roll. To start up from Windows XP, all you need to do is hold down the option key at startup, and choose the right partition:



Figure 8. Choose Windows or Mac OS X Boot Disk (Option Key).

Of course, this would be quite a pain in day-to-day use (dual-booting, though a nice capability, is awkward enough on its own). Apple, though, in staying consistent with its incomparable design philosophy and end-user touch, makes certain tasks like picking a boot disk a joy.



Figure 9. Selecting Windows Boot Disk From Startup Disk.

However, there's been a lot of talk about using the Boot Camp partition with other virtualization solutions such as Virtual PC for Intel Macs (when it comes out). That would truly be the best of both options, as they say: boot into Windows XP natively when you have the need for full access to the hardware (like for gaming), or use a virtual machine with the same partition when you just want to use a Windows program for a little while. I am currently looking for two matching USB joysticks with strong suction cups, so I can attempt to fire up my old DOS-based Williams Arcade package, and fire up Robotron, on my Mac! Woohoo!



Figure 10. The Boot Camp Partition

A Closer Look at the VMs: Virtual PC et. al.

Although I had some flirtations with the PowerPC builds of Bochs (http://bochs.sourceforge.net) and QEMU <http://fabrice.bellard.free.fr/qemu>, Virtual PC had the details down that the Open-Source Virtual machine contenders couldn't seem to pull off consistently: a graphical interface for configuring the virtual hardware, and hardware compatibility that was unmatched. Networking and USB support actually worked to the extent where you could sync a PocketPC with it with the emulated Windows System, or safely join a Windows domain. Multimedia applications worked as expected, albeit slowly. On the flipside, Open-Source emulators like QEMU performed reasonably quickly, but installing Windows on QEMU was a crapshoot, sometimes it would work, sometimes it wouldn't. Reading from the CDROM drive was inconsistent. A kernel extension was required for networking support. USB support, fahgetabahit! Sound? No way! Bochs, although it was more consistent, was difficult to configure, and was so slow, it was almost useless. Both Bochs and QEMU can be somewhat difficult to configure, though recently that's changed, especially for QEMU. There's been a company (who I won't name) who's developed a GUI for Bochs and QEMU, and has sold it as a commercial product. Read the rest of this article carefully, and note that I don't review that solution. That's an intentional omission.

Over the years, it has been Virtual PC (originally developed by the magical Mac OS hacking company Connectix of Virtual Playstation fame), now a Microsoft Product, that became the gold standard for running any guest OS, which required the i386 architecture on a PowerPC-based Mac. Five years ago, I used to travel around the country delivering IT training courses, including Mac OS Troubleshooting and Networking, Windows NT Server, and Novell Netware. I used to teach all of the workshops using two PowerBook G3s running Virtual PC 3.0. I even developed the habit of covering up the white Apple logos on the back of the PowerBook with yellow stickies, and then pulling them off (ta-da!) in the middle of the training to stunned gasps, "I didn't know Mac could do that." If anyone remembers, Apple's adoption of the G5 processor slowed down the pace of Virtual PC development because the PowerPC G4 processor supported something called "Pseudo little-endian mode," which the G5 didn't, causing a six-month delay before the release of Virtual PC 7.



Figure 11. Virtual PC Icon.

Now that Virtual PC 7 has been out for over a year, it's fair to characterize it as a pretty awesome combination of emulator and virtual machine, with a long track record going back to 1998, and successes far beyond that of most mortal software. And you'd think, with Apple switching to Intel processors, that Virtual PC might have finally run its course as a solution, and may now find itself an end-of-life software product. But, quite the contrary is true. Virtual PC, because of its mindshare and incredible polish as a program, is poised to become the premier Windows-on-Mac OS X solution. Even its familiar brand name is comforting to the end user. Installing Virtual PC is a snap, as it comes with a license for Windows XP Professional, all set up and ready to go. As far as performance goes, you couldn't ask for anything more from a big endian to little endian emulator. It even has touches like a Windows "Start" menu that sits in the Dock.



Figure 12. Virtual PC VM Settings.

Installing Virtual PC is a snap, simply insert Install disk one, start the installer, insert install disk two, and follow the prompts. As a matter of fact, it's quicker to install Windows XP Professional under Virtual PC than it is on most real PCs. Performance is a bit "heavy," due to the emulation, but highly acceptable on my dual G5 2.0 ghz with 2 gigs of RAM, as long as I stick to productivity applications, and not games or anything involving sound or video. However, when sound does emanate from Virtual PC, it comes out in full synthesized stereophonic glory, not some ratty 8-bit distorted groan other emulators have been known to make. Likewise, everything simply works as expected, from the virtual hard disks that grow when they need more space to the virtual access to the file system on the host Mac itself. It's impossible to find any rough edges on Virtual PC.



Figure 13. Virtual PC on Mac OS X (PPC).

Although Microsoft has lost the race to market to the open-source Q and Parallels (read on), VPC for Intel Macs may be worth waiting for, as it'll have a polish and finish other solutions might not, not to mention the stellar reputation and support system of the world's largest software company behind it. One look at the Virtual PC for Mac device compatibility chart at Microsoft Mactopia: <http://www.microsoft.com/mac>, and it's easy to see why VPC is worth waiting for. Anyone who says Microsoft has "lost the Mac emulation race", hasn't seen this. We'll all be the winners for the extra competition, no matter what happens. Microsoft already has its popular Virtual PC for Windows product, which could be ported to run on Mac OS X for Intel. One the other hand, it might be easier for Microsoft to port Virtual PC for PowerPC to Mac OS X for Intel, and simply drop the emulation component, keeping the virtual machine. Currently, Virtual PC for Macintosh simply won't run on the new Intel Mac hardware.

Windows VM for Free? Caveat Emptor.

Well, possibilities become realities, and now I'm happy to report that three former Open-Source emulation projects now support Mac OS X for Intel natively. Why "former" emulation projects? Because in the case of each one, the need for instruction-level endian emulation has been alleviated by the compilation on and for the new Intel Macs. However, not all "free" Open-Source emulation solutions are created equal, and in one case, it's quite clear that a commercial variant is not a whit better than its free counterpart.

First, Q:

The Q <http://www.kberg.ch/q> project adds a nice GUI and Assistant to the QEMU <http://fabrice.bellard.free.fr/q> emulator I've been using for the past two and a half years. Q is about as close to Virtual PC as I've seen, and for an open-source project, my hat is off to the developers. Performance is also excellent. They've done away with the need for the tun/tap kernel extensions that older versions of QEMU required, so that the networking just works, with no further fuss.



Figure 14. Q VM Control

Installing Windows XP Professional on Q simply won't work at the time of writing this article, because of some incompatible interactions between the installer and the emulator. For now, you have to install Windows XP Professional and Service Pack 2 on a PCC running Q (yes, it runs on PPC hardware too, just slower), and move the VM (in the QEMU folder in ~/Documents) over to an Intel Mac), and then you're in business.



Figure 15. Q VM Settings.

As it stands now, Q on Intel Macs is highly useable, and much faster than VPC on a fast G5. It even allows access to the Mac's files system when running, something that Parallels (see below) doesn't yet support. However, it's quite clear from running Windows XP with Boot Camp that Q (and QEMU) does eat up a lot of processor cycles, doesn't multitask well, and doesn't have graphics acceleration (meaning no widescreen modes), and no sound. However, it's come so far in the last year and a half, I wouldn't be surprised if Q didn't become a standard solution for many power users, and of course for the occasional use of a Windows accounting program or Access 2003, it's impossible to beat Q's price.

Second, Parallels:

A newcomer to the Mac OS X (and Linux, and Windows) VM scene is Parallels workstation. As far as I know, Parallels is strictly a Virtual Machine, and includes no emulator. However, even in its current public beta form, it's obvious that Parallels is already a highly mature product, and a serious contender for the VM title.



Figure 16. Parallels Workstation Logo.

Working with Parallels workstation yielded some pleasant and not-so-pleasant surprises. First, Windows XP Professional booted up normally, but failed to read several critical files during the installation process. I found that disabling the hardware acceleration during the installation process, allowed the installation to proceed and finish. Also annoying was Parallels' inability to recognize an optical disk inserted after the VM was booted, or release that disk until the VM was shut down. Also, Parallels currently has no method for sharing files with its host OS, something that needs to be resolved sooner rather than later. Also, the interface for configuring the Parallels virtual machine is rather un-Mac-like, compared to Virtual PC and even Q. It also contacts two kexts (kernel extensions), and did cause a kernel panic once when switching video modes.



Figure 17. Parallels VM Configuration.

On the plus side, Parallels is fast, very fast. It takes advantage of hardware acceleration for virtualization technology built into some Core Duo processors (supposedly the iMac and MacBook have this capability while the Mac Mini does not). The graphic acceleration is also much better, supporting widescreen modes that match the MacBook Pro and the iMac. The price ($50) is also right, though Parallels seems very much like a Beta right now. However, if the developers can perfect Parallels, I'd imagine they could easily charge $100 per seat. By the way, don't try using the Boot Camp video drivers with Parallels (someone has already tried that, and well, it hosed their VM), and it's probably not a good idea to try booting Parallels off of the Boot Camp partition--yet.



Figure 18. Parallels, Windows XP Professional, and Picasa.

Third, Darwine:

In my January MacTech column, I flagged Darwine <http://darwine.opendarwin.org> as the project to watch. Well, in between MacWorld and this writing, the Darwine project released its first build with native i386 support for Mac OS X. Currently, Darwine is too rough (I'd say Alpha quality at best) for production use. However, it's easy to see the promise of Darwine--applications launch instantly and respond more quickly than in any VM. However, to get Darwine installed properly, requires a lot of command-line tweaking (and crashes a lot), so I'm going to hold off on covering it in depth until it stabilizes, probably in three or four months at a minimum. For now, here's a screenshot to tantalize you:



Figure 19. Microsoft Excel 2000 Running Under Darwine.

So What Does This Mean for the Big Picture?

    In my January MacTech column I wrote:

    And Apple knows where Microsoft's bread is buttered as well. A company with an open-minded CTO who loves open-source and the quality and security of Mac OS X on Apple hardware may realize that deploying XServe G5s would save his company a bundle in annual CAL payments, but cannot even begin to consider putting a Mac OS X computer in his employee's cubicles until a critical database front end, created in some Windows-specific IDE like Powerbuilder will run under Mac OS X.

Well, we're getting closer and closer to that reality. Most Mac Consultants and Admins that I know, are currently running some form of Windows compatibility solution on their MacBooks, iMacs or Minis with Intel processors, where just a year or two ago they might have echoed Apple's party line of "we don't do Windows." With Apple's assertion that it "wouldn't do anything to anything to prevent people from using Windows" on Intel Macs after the transition announcement at WWDC last June, it's very telling that Boot Camp was released so soon after the new Mac hardware. It can't be coincidental. The next generation of Xserves, and the availability of VMware ESX server will tell another story. Many people realize that the battle to displace Microsoft solutions from the Enterprise, Consumer and Education markets cannot necessarily begin with marketing the advantage of Mac OS X over Microsoft Windows, but the advantages (and now flexibility) of owning a Macintosh computer. Apple's not going after Microsoft's software business, but the hardware businesses of Dell, HP and IBM. The message is crystal clear: "One operating system isn't good enough anymore. One computer or server is."


Dean Shavit is an ACSA (Apple Certified System Administrator) who loves to use a Mac, but hates paying for software. So each month he's on the hunt for the best Open-Source and freeware solutions for OS X. Besides surfing for hours, following the scent of great source code, he's a partner at MOST Training & Consulting in Chicago, where he trains system administrators in OS X and OS X Server, facilitates Mac upgrade projects for customers, and writes for his own website, . Recently, he became the surprised father of an application: Mac HelpMate, available at . If you have questions or comments you can contact him: dean@macworkshops.com.

 
AAPL
$567.77
Apple Inc.
+43.02
MSFT
$39.86
Microsoft Corpora
+0.17
GOOG
$525.16
Google Inc.
-1.78

MacTech Search:
Community Search:

Software Updates via MacUpdate

Ember 1.5.1 - Versatile digital scrapboo...
Ember (formerly LittleSnapper) is your digital scrapbook of things that inspire you: websites, photos, apps or other things. Just drag in images that you want to keep, organize them into relevant... Read more
Cyberduck 4.4.4 - FTP and SFTP browser....
Cyberduck is a robust FTP/FTP-TLS/SFTP browser for the Mac whose lack of visual clutter and cleverly intuitive features make it easy to use. Support for external editors and system technologies such... Read more
TechTool Pro 7.0.3 - Hard drive and syst...
TechTool Pro is now 7, and this is the most advanced version of the acclaimed Macintosh troubleshooting utility created in its 20-year history. Micromat has redeveloped TechTool Pro 7 to be fully 64... Read more
MacFamilyTree 7.1.6 - Create and explore...
MacFamilyTree gives genealogy a facelift: it's modern, interactive, incredibly fast, and easy to use. We're convinced that generations of chroniclers would have loved to trade in their genealogy... Read more
EtreCheck 1.9.9 - For troubleshooting yo...
EtreCheck is a simple little app to display the important details of your system configuration and allow you to copy that information to the Clipboard. It is meant to be used with Apple Support... Read more
TeamViewer 9.0.28116 - Establish remote...
TeamViewer gives you remote control of any computer or Mac over the Internet within seconds, or can be used for online meetings. Find out why more than 200 million users trust TeamViewer! Free for... Read more
DiskAid 6.6.3 - Use your iOS device as a...
DiskAid is the ultimate transfer tool for accessing the iPod, iPhone or iPad directly from the desktop. Access data such as: music, video, photos, contacts, notes, call history, text messages (SMS),... Read more
Viber 4.1.0 - Send messages and make cal...
Viber lets you send free messages and make free calls to other Viber users, on any device and network, in any country! Viber syncs your contacts, messages and call history with your mobile device,... Read more
Apple iOS 7.1.1 - The latest version of...
The latest version of iOS can be downloaded through iTunes. Apple iOS 7 brings an all-new design and all-new features. Simplicity Simplicity is often equated with minimalism. Yet true simplicity is... Read more
1Password 4.3 - Powerful password manage...
1Password is a password manager that uniquely brings you both security and convenience. It is the only program that provides anti-phishing protection and goes beyond password management by adding Web... Read more

Latest Forum Discussions

See All

Pen & Ink Review
Pen & Ink Review By Jennifer Allen on April 24th, 2014 Our Rating: :: CONVENIENT ARTISTRYiPad Only App - Designed for the iPad Pen & Ink is an ideal way to sketch down some visual ideas or simply spark your imagination.   | Read more »
Sonic & All-Stars Racing Transformed...
Sonic & All-Stars Racing Transformed Now Free, to Add New Iconic Characters and Elements Posted by Tre Lawrence on April 24th, 2014 [ | Read more »
Soccer Rally 2 Review
Soccer Rally 2 Review By Carter Dotson on April 24th, 2014 Our Rating: :: GOALKEEPINGUniversal App - Designed for iPhone and iPad Soccer Rally 2 is the most serious vehicular soccer game ever created.   | Read more »
Galaxy Conquerors Review
Galaxy Conquerors Review By Jennifer Allen on April 24th, 2014 Our Rating: :: RETRO SHOOTINGUniversal App - Designed for iPhone and iPad Old school shooting is fun but inaccurate in Galaxy Conquerors.   | Read more »
Yomi Review
Yomi Review By Rob Thomas on April 24th, 2014 Our Rating: :: C-C-C-COMBO BREAKERiPad Only App - Designed for the iPad Round One – Fight! No quarters required for this iOS adaptation of a tabletop adaptation of the arcade fighting... | Read more »
Injustice: Gods Among Us Updated with Ne...
Injustice: Gods Among Us Updated with New Characters, Leaderboards, Gear, and Online Multiplayer Posted by Rob Rich on April 24th, 2014 [ | Read more »
Spin It Review
Spin It Review By Jordan Minor on April 24th, 2014 Our Rating: :: SPIN ME RIGHT ROUNDUniversal App - Designed for iPhone and iPad Spin It has a fine puzzle game model, but its execution lacks energy.   | Read more »
Productivity App NoteSuite is Having its...
Productivity App NoteSuite is Having its Biggest Sale Ever, Just for One Week Posted by Rob Rich on April 24th, 2014 [ permalink ] | Read more »
Wayward Souls Review
Wayward Souls Review By Carter Dotson on April 24th, 2014 Our Rating: :: CARRY ON, WAYWARD SONUniversal App - Designed for iPhone and iPad Wayward Souls is a roguelike-inspired action-RPG that sets a high bar for other games to... | Read more »
The Sandbox Gets Update, Receives New Ca...
The Sandbox Gets Update, Receives New Campaign and New Elements Posted by Tre Lawrence on April 24th, 2014 [ permalink ] Universal App - Designed for iPhone and iPad | Read more »

Price Scanner via MacPrices.net

Strong iPhone Sales Drive Apple Record March...
Apple on Wednesday announced financial results for its fiscal 2014 second quarter ended March 29, 2014. The Company posted quarterly revenue of $45.6 billion and quarterly net profit of $10.2 billion... Read more
Award-Winning NoteSuite Productivity App is $...
Minneapolis based Theory.io has announced an 80-Percent Markdown NoteSuite for iPad. NoteSuite helps users stay organized by capturing their notes, to-dos and documents in one organized place.... Read more
16GB 1st generation iPad mini available for $...
Radio Shack has a select number of refurbished 1st generation 16GB WiFi iPad minis available for $199.99 on their online store. Choose free shipping or free ship-to-store. We expect these to sell out... Read more
13-inch 2.5GHz MacBook Pro on sale for $100 o...
B&H Photo has the 13″ 2.5GHz MacBook Pro on sale for $1099 including free shipping plus NY sales tax only. Their price is $100 off MSRP. Read more
iPad Sales “Lull” A Reality Correction Of Unm...
I have lots of time for Jean-Louis Gassée, the former Apple Computer executive (1981 to 1990) who succeeded Steve Jobs as head of Macintosh development when the latter was dismissed in 1985. Mr.... Read more
Apple Makes OS X Betas Available To All – Wit...
Apple’s OS X Beta Seed Program, which lets you install the latest pre-release builds, try it out, and submit your feedback, is now open to anyone who wants to sign on rather than to developers and... Read more
Apple Releases iOS 7.1.1 Update
The latest iOS 7.1.1 update contains improvements, bug fixes and security updates, including: • Further improvements to Touch ID fingerprint recognition • Fixes a bug that could impact keyboard... Read more
Logitech Announces Thinner, Lighter, More Fle...
Logitech has announced an update to its Ultrathin for iPad Air, iPad mini and iPad mini with Retina display, improving the flexibility and design of its award-winning predecessor with an even thinner... Read more
Logitech Introduces Hinge, Big Bang and Turna...
Logitech has announced expansion of its tablet product line with three new cases – the Logitech Hinge, the Logitech Big Bang and the Logitech Turnaround – each for the iPad Air, iPad mini and iPad... Read more
WaterField’s Rough Rider Leather Messenger Ba...
WaterField Designs have announced the new 15-inch size of their popular Rough Rider leather messenger bag, a vintage-looking bag that combines Old West charm and ruggedness with distinctly modern... Read more

Jobs Board

*Apple* Solutions Consultant (ASC) - Apple (...
**Job Summary** The ASC is an Apple employee who serves as an Apple brand ambassador and influencer in a Reseller's store. The ASC's role is to grow Apple Read more
*Apple* Solutions Consultant (ASC) - Apple (...
**Job Summary** The ASC is an Apple employee who serves as an Apple brand ambassador and influencer in a Reseller's store. The ASC's role is to grow Apple Read more
Position Opening at *Apple* - Apple (United...
…customers purchase our products, you're the one who helps them get more out of their new Apple technology. Your day in the Apple Store is filled with a range of Read more
*Apple* Solutions Consultant (ASC) - Apple (...
**Job Summary** The ASC is an Apple employee who serves as an Apple brand ambassador and influencer in a Reseller's store. The ASC's role is to grow Apple Read more
*Apple* Inc. Research Data Specialist - Appl...
…of Worldwide Market Research & Intelligence. The team is responsible for conducting Apple branded consumer market research. It is also responsible for analyzing data Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.