Boot Camp, Q/QEMU, Parallels: Pros/cons

news
Apr 17, 20063 mins

Each of the solutions for running Windows and other x86 operating systems on Intel-based Macs has unique advantages and disadvantages that should be taken into account when considering your options. Here’s my start on an extemporaneous list. Extend it with your comments, please.

Common to all Windows on Mac solutions: All solutions are presently in beta; support for hard-wired and Airport Extreme networking; adaptation of Mac keyboard for OSes expecting PC layout; firmware or software layer that intercepts device discovery queries and responds with details already gathered by OS X or during the boot process; some degree of display acceleration, mouse pointer shape support in Windows; driver bundle supplied to improve performance and compatibility post-install

Advantages unique to Boot Camp: Native power management; compatibility with new drivers for chipsets and internal and external peripherals without having to wait for a 3rd party; runs x86 virtualization (Virtual PC, VMWare Workstation, etc.); native speed access to all peripherals with their native feature sets intact; takes advantage of advanced features of late-model CPUs and chipsets; Mac keyboard volume/mute keys work, adds brightness control to Windows task tray; simple, elegant, uninstallable solution; easy switch between OSes; hibernation can be used to save sessions before switching (flaky at present); non-destructive partitioning preserves HFS+ data while permitting Windows direct block access to drive

Disadvantages of Boot Camp: Must reboot to switch OSes, can only run one OS at a time; Intel Mac platform is not similar to any other PC, which will cause problems for some drivers and system software; Boot Camp Assistant only sets up internal (boot) drive–there are workarounds; Airport Extreme (Atheros) driver has no management utilities; Boot Camp Assistant only supports Windows XP–again, there are workarounds

Advantages of virtualization: Broad OS compatibility; strong security; runs OSes in resizable windows; rapid freeze and thaw of current system state reduces start-up and shutdown time; easy to run and monitor multiple instances of multiple OSes; growable disk images; disk image files are easy to duplicate, relocate across volumes and systems, and back up; extremely easy to install and configure; disk images can instantly restore VM to known-working state; good to excellent performance; can be paused or niced down to restore host’s processing power; can simulate resource-limited system configurations for testing

Disadvantages of virtualization: No disc burning support; very limited range of peripherals (usually: hard disk, floppy, optical, usb (as serial), network); cannot run guest on OS-native partition or drive–must be virtual drive image on host filesystem (and therefore is much slower than native); digital media limited, e.g. high resource usage, choppy playback, limited number of audio channels; the bugs of the host become the bugs of the guest OSes; unpredictable performance penalty on host OS; cannot expose advanced features of late-model CPUs and chipsets to guest OSes

Advantages of Parallels: Excellent performance through native execution and Intel VT extensions; low price, free beta

Disadvantages of Parallels: Costs (any) money, backward GUI, “patent pending technology;” tested version unstable across sleep/wake–may be fixed in new beta

Advantages of Q/QEMU: Open source, free, no patents; one solution emulates many CPUs; community development can improve solution over time; very stable; nice GUI; highly configurable

Disadvantages of Q/QEMU: Horrible performance–emulates x86 on x86; small project; accelerator that executes x86 instructions directly is available but not open source and not (at this writing) OS X compatible