Boot Camp or virtualisation, why choose?

There has been a lot of noise on the net about Apple’s latest beta software called Boot Camp. The next day, another company announced Parallels for Mac OS X (intel processor required), a virtualization software. Listening to this weeks TWIT podcast, I started wondering why it needs to be one or the other?

Latest new from Apple: Macs do Windows! Well, at least with a little beta software Apple released publicly that enables to dual-boot between Mac OS X 10.4 and Microsoft Windows XP and that is completely unsupported. I haven’t received my MacBook Pro (yet) so I wasn’t able to try it out, but this is just the beginning… and here is a potential future I would welcome.

The beta software Apple released early April 2006 to enable users of the Intel Macs to dual-boot Mac OS X 10.4 and Windows XP is great. But I don’t see myself using it on a regular basis, and am much more interested in the new virtualization software called Parallels. I’ve been using Virtual PC for a while on my Powerbook G4, and that’s more or less what I need, but with a click-reaction time that makes it actually useable.

I don’t see myself rebooting my computer every time I need want to use a software that only run Windows. I can only see myself doing this to get full performance for games or very specific software which need all the processor power they can get (think 3D modeling). Instead, I can see myself being able to access the Windows applications side-by-side with my Mac apps, and benefit from the Mac OS X 10.4 benefits (security, workflow and so much more). The current solution on a PowerPC Mac is called Microsoft Virtual PC, but it is way to sloooowwwwww as it has to emulate the CPU. Now that Macs run on intel processors, the new buzzword to look for is virtualization, enabling to use a virtual computer within a window at almost full speed. Having been a user of VMWare on Windows for some time to do beta software testing, I am looking forward to having that on my Mac.

Parallels is now available as a beta software to do that on the Intel Macs. Microsoft is looking at having Virtual PC as well… Q is an Open Source project to do that (based on Qemu) and VMWare is rumored to work on their solution. I can therefore only assume that the virtualization problem is only a few months away to being fully answered on Intel Macs.

But the choice between Dual-Boot and Virtualization is all about compromise. Be able to run the apps for one OS at full speed or be able to run apps for different OSs simultaniously with a performance impact. Here is the thought that I hope someone is looking at implementing: What if both the Dual-Boot solution and the Virtualization could share the same installation of Windows XP?

Yes, that’s right. Install Windows XP on a partition on the Mac using Boot-Camp (I really don’t expect Windows to be available as a pre-installed option any time soon from Apple). Full speed for Games and 3D software, here I come. But now, using a Virtualization software from within Mac OS X, I should be able to launch the same OS from within that abstraction layer, enabling me to use the Windows apps side by side with my Mac OS applications. Yes, there might be problems with WinXP Activation as it is dependent on the hardware, but I am certain this can be resolved. The idea is that you have one installation of Windows on your Mac, and use it the way best work for you for your current task… just include a bigger hard drive 😉

And to build on that thought, consider the previous announcement of CodeWeavers about CrossOver Office (e.g. Wine) for intel Macs. Having Windows XP available on a partition will greatly help with using Wine… just like you need MacOS 9 installed on the hard drive to run Classic software on PowerPC Macintoshes. Could Windows be the the new classic of the Intel Macs with 10.5?

So here is a summary of what I need would want. Take a MacBook Pro with Mac OS 10.5 installed. Add Windows XP / Vista on a FAT32 partition, and make sure to index it with Spotlight. Now, you can either boot Windows XP / Vista at full speed (and have no access to your Mac software) for those apps that require full CPU cycles. But the preferred way would be to use Mac OS as the default operating system, launching the application you need without having to worry if it is a Mac and Win software (just like you launch a Classic, Carbon, Cocoa or Java application on a PowerPC Mac today).

Sweet, but just like with Classic, the ultimate goal is not to stick with Windows apps, it’s to provide a transition path to a better solution (from Apple’s perspective at least). So to finish up, as the preferred applications in this configuration are Cocoa based, Apple simply needs to bring back the Windows version of OpenStep (the NextStep libraries that are at the core of Cocoa) from the dead, and re-define the concept of truly universal binaries. Enabling users to run their legacy windows applications has always been one of the biggest problem for switchers, but the number of native applications is also important to consider (I’ll leave the price of the hardware out of the discussion). If software developers can come to a point where they engineer an application once and their customers are able to run it on Macs as well as Windows computers natively (sorry Linux fans)… wouldn’t that be really great. No virtual machine required (sorry Java fans). And suddenly, Apple could generate a substantial revenue from royalties (licencing of OpenStep could be on a per unit distributed basis for example) and greatly benefit from the Windows platform.

Let’s see what the future will bring. But if this is that one, the geek in me will be very happy :)

One thought on “Boot Camp or virtualisation, why choose?”

Comments are closed.