Back when I first contacted TidBITS to write my article "From iPod to MacBook Pro: A Switcher's Tale," I never expected it would result in a trilogy dedicated to the state of virtualization on a Mac. But with this final chapter I'm proud to say my switch to a full-time Mac user is complete, ahead of schedule, and virtualization is far more powerful than I ever expected merely six months after the release of the first Intel Macs. And this isn't due to the powers of giants like Microsoft (Virtual PC), EMC (VMWare), or even open source (QEMU), but rather a diminutive yet nimble startup called Parallels. (See my last article, "WinOnMac Smackdown: Dual-Boot versus Virtualization" for a more thorough explanation of virtualization and how it differs from Apple's Boot Camp beta implementation.)
I'm normally quite cynical and critical of new technology products, but Parallels Desktop so far surpasses initial expectations that's it's hard to avoid waxing poetic. Although there's still plenty of room for improvement, it's one of the few pieces of software I can strongly recommend without reservations, and one that might just change the world's perceptions of Macs. For anything short of gaming, Parallels Desktop is the best option for running Windows (and more) on a Mac.
From Beta Program to Release -- Parallels released their first beta of Parallels Desktop for Mac (called Parallels Workstation at the time) just as I was completing my previous article for TidBITS the first week of April. Unlike any of the other tools I tested or reviewed, including Apple's Boot Camp, I was able to install any version of Windows, all updates, and all major software packages. Performance was decent, but the first beta was plagued with poor memory management, limited features (such as a lack of file exchange with the host system), and bugs that crashed my Mac during such uncommon tasks as putting it to sleep. That said, it ran Windows, it ran all the software I needed (including our corporate VPN), and ran it all faster than my PC at work. I'm pretty sure the Parallels development team hasn't slept since the first beta, as the following two and a half months included nearly weekly releases full of significant performance and feature improvements. The final release is a polished, stable product with more features than the initial beta suggested, although still lacking a few pieces that advanced users familiar with VMWare might miss. Despite the "beta" label, I've run all the releases in my personal production environment and feel confident that I've stress-tested fairly thoroughly.
The final release version of Parallels Desktop for Mac appeared on 15-Jun-06 for $80, but it costs only $50 for those who order before 15-Jul-06; sorry folks, the $40 price for those of us who pre-ordered is no longer available. [Though if you purchase "Take Control of Running Windows on a Mac", there's a coupon at the end of the ebook with which you can save $10 off Parallels Desktop. -Adam]. The final release includes a bonus: the normally $180 Parallels Compressor for shrinking virtual images from multiple products, including VMWare.
The Review -- What's good about the release version? It boots Windows XP SP2 quickly. It runs Windows, Linux, OS/2, and pretty much any other x86 operating system. It supports most USB devices. It runs different operating systems full screen on multiple monitors. You can cut and paste between operating systems. It shares files with Mac OS X. It's probably faster than your PC.
What's bad? Not much, to be honest. There's no support for FireWire or gaming-level graphics, USB 2.0 devices run at 1.1 speed, and some CD/DVD control issues exist.
As with most Mac software, installing Parallels is a breeze. Just download and mount the disk image and double click the installer package. But installing the software doesn't instantly grant you access to the world of Windows. You'll still need a Windows install disc and a valid license, and you'll have to go through a few basic steps. Although Parallels does a good job of simplifying the process, it might be intimidating to a non-technical user who hadn't read the instructions in "Take Control of Running Windows on a Mac."
I started by creating a new virtual machine using the included wizard, which does a good job of walking you through the process. I decided on my operating system (Windows XP) and named the virtual machine before being dropped into the console view where I chose various configuration options. The defaults should work for most users, but I did give my virtual machine extra memory (256 MB is the default) and enabled file sharing with Mac OS X (disabled by default to keep those pesky Windows viruses out of your Mac files). I inserted my Windows installation disc, clicked the Play button in Parallels Desktop, and started walking through the Windows installer. From here on the entire process is no different than installing Windows on a new PC. Windows was running in less than 30 minutes, after which I installed the Parallels Tools for better networking, screen, and mouse support before going through the more laborious process of installing all my needed Windows software. In all it took about 90 minutes to install Parallels Desktop, Windows XP, Parallels Tools, and my basic package of Windows software. One caution: you really need a valid Windows license, and you will have to go through the activation process.
The Parallels Desktop interface is clean and intuitive and should feel familiar if you've used other virtualization tools like VMWare. Small icons in the lower right corner display your networking, USB, hard disk, and other peripheral status while a moveable toolbar allows you to start, stop, pause, reset, or switch your virtual machine to full screen mode. With Parallels Tools installed, your mouse cursor scrolls cleanly across the guest operating system as if it were part of Mac OS X. For guest operating systems without Parallels Tools you must remember to press Ctrl-Alt to regain your mouse control. Keyboard control can be a bit tricky when moving in and out of virtual machines, since although it looks like just another part of Mac OS X, it's still a separate operating system with keystroke combinations that might conflict with those in Mac OS X. Parallels Desktop provides a menu to send special commands (like the ever-present Ctrl-Alt-Del) to the guest operating system, but I frequently find myself forgetting that Ctrl-C in the Windows window is very different than Ctrl-C in Mac OS X.
Performance is where Parallels Desktop really shines. It's the first virtualization software to take advantage of the VT technology in Intel's newer chips, hardware extensions provided specifically to enhance virtual machine performance. On my MacBook Pro, Windows XP takes about 10 seconds to boot and is incredibly responsive. I've seen some outside reports state that performance is only around 2 percent slower than running Windows XP under Boot Camp and is faster than running on some Core-Duo PC systems from other hardware manufacturers. Performance after booting is still strong and easily comparable to my Pentium 4, and is definitely faster than my Pentium M laptop. I can't express the shock value of seeing Windows boot so fast the progress bar never makes it past the first little dot. Everywhere I go, I end up with a crowd of IT professionals behind me just watching me boot in and out of Windows. If only Apple offered rewards for referrals, I could probably retire in a few more months.
I can usually sway those skeptics that still balk at the performance by giving them a quick full screen demo. You know that great looking cube effect when you switch users in Mac OS X? That's one of around a half dozen transition options when moving to full screen mode. The cube rotates and pauses for a second as the video resizes to the MacBook Pro's widescreen resolution. There it is, looking just like a native Windows machine (without the ugly stickers slapped onto the case). If you have two monitors, you can keep Mac OS X on one and run your guest operating system on the other, full screen, with smooth mouse scrolling across each. Just don't forget the command to switch out of full screen (Alt-Enter) or you'll get stuck like I did the first time. For some reason I've noticed a slight delay when trying to switch back, and sometimes have to send the command more than once.
Networking support is decent, but definitely weaker than some of the competition (not that anyone else runs on Intel Macs yet). By default, Parallels Desktop creates its own bridged network connection using the host computer's active network adapter, making your virtual machine look like another computer on the network. You can also specify that it use any network adapter on your Mac. Parallels also supports host-only networking, if you want to isolate the virtual machine or even share your Mac's existing network connection. I've used this to share my wireless EVDO connection over Bluetooth when traveling (you can set this in your Sharing preference pane). Unlike VMWare, you can't create a complete virtual network on your Mac, a handy feature for IT pros wanting to test virtual systems in a safe, "fake" network.
One of the features I particularly appreciate is being able to run nearly any Linux distribution, including live distributions (like Knoppix) directly from their disk images without local installation. Tools support isn't available, so you have to remember to switch mouse and keyboard control manually. Hardware support is also more limited, but I've tested both Slax and Knoppix-based distributions without any problems. Networking and displays work well enough for most of my needs. Like other virtualization tools, you can point Parallels Desktop at any bootable disk image without having to decompress and install it on a partition.
USB support appeared in the last few release candidates, and works with the USB devices I've tested, including one (my SCUBA dive watch) that didn't work in earlier betas. Reports from the Parallels support forums indicate not every device works yet, but the development team seems to be making good progress. One big limitation is USB 2.0 devices only connect at the slower USB 1.1 standard. I also don't recommend having devices connect automatically, or every USB device you connect will be hijacked by your virtual machine. It's kind of annoying when I plug in my iPod shuffle and it pops up in the virtual machine as a mass storage device instead of opening iTunes.
As with other virtualization products, Parallels Desktop supports multiple operating systems running concurrently - but you had better have enough memory. I upped my MacBook Pro to 2 GB and can run two or three virtual machines comfortably with my usual Mac OS X applications.
Individual virtual machines consist of two files: one hard disk image and a configuration file. Cloning virtual machines is easy, and you can back up your entire Windows installation by simply copying the hard disk file. If only all computers were virtual. Parallels also includes tools for changing virtual disk sizes, but this process is a bit complicated; it's better to make sure you create a large enough image from the start.
In the Real World -- Aside from showing off, I've been migrating completely onto Parallels as the beta versions have improved. I've moved all but one of my work applications into the virtual machine, and it has increased my productivity. My Windows installation is much cleaner than my "official" work system, since all my personal applications are in Mac OS X and I need only a minimal set of Windows tools. Windows now runs faster, is easier to maintain, and easier to keep locked down. I'm in negotiations with our IT department to create a complete, sanctioned virtual image that's locked down without administrative rights. Since Parallels also sells Parallels Workstation, a version that runs on Windows, if this experiment works, we'll have a locked-down, sanctioned image that's easy to migrate, backup, secure, and distribute. Users can run all the spyware and viruses they want on their host PC (except for us Mac users, of course) while the corporate image remains safe and isolated. I also find myself frequently running multiple versions of Windows and Linux concurrently, giving me a great excuse to bump my system memory up to 2 GB.
And I just can't fully express the "Wow!" factor. When people, especially IT professionals, see Windows running comfortably on a Mac with full functionality, you can see prejudices melt from their eyes. When they realize my Windows virtual machine is running faster than their new dedicated PC, you can feel the envy ooze out of their pores. The effect of seeing the cube transition to full screen can only be described as the geek equivalent of those swooning teenage girls in those old Elvis movies. This is the future of computing on any platform.
Looking Forward -- Although Parallels Desktop/Workstation is available on Mac and PC, the greater standardization of Mac hardware may afford opportunities to improve the virtual experience. Today the one glaring weakness of virtual machines is much weaker video support. Without direct access to graphics cards you can't support the advanced features needed for gaming and other visual elements (as we might expect in Windows Vista). The Parallels development team is rumored to be working hard on the problem, and I wouldn't be surprised if the next version supports advanced graphics applications. Hopefully, we'll also see better networking support, better USB (and even FireWire) support, and I wouldn't mind some interface improvements when selecting and switching between different virtual machines. While the average user just running a single instance of Windows on their Mac will be satisfied with current features, Parallels definitely has room to improve features for IT pros. It also lacks any of the centralized management tools for multiple images needed for large enterprise deployments.
Outside of additional product features, Parallels Desktop is one of the only applications I've seen that could change the world's perceptions and acceptance of Macs. It's right up there with Mac OS X, iLife, and Microsoft Office for Mac in the category of "this changes everything."
If you're not convinced, consider this: Apple has dedicated a page to Parallels Desktop linked to their new "Get a Mac" advertising campaign under the banner "You can even run Windows software." You'll notice a distinct lack of any reference there to Apple's own Boot Camp (though the reason could be that Boot Camp is still in beta). Could we see Parallels become part of the Apple family? Maybe, but Parallels is an up-and-comer in the world of virtualization and has a healthy future even without gaining the Apple name. Either way the Mac community wins, not that I'd complain about it being built into Mac OS X.
Thanks to Parallels Desktop, running Windows on a Mac - without diminishing the Mac (or Windows) experience - is now a reality. I can highly recommend Parallels for anyone with an Intel Mac and a need (because it probably isn't a desire) for Windows.