Virtual Reality--Which solution is right for me?
Volume Number: 23 (2007)
Issue Number: 03
Column Tag: MacEnterprise
Virtual Reality
Which solution is right for me?
By Philip Rinehart, Yale University
So many choices
In 2005, when Steve Jobs famously stood on stage at the Worldwide Developer Conference and announced the transition to the Intel processor, some wondered what it would mean for the future. In particular, the question of virtualization almost immediately surfaced. Would Mac users now be able to run Windows-based applications? Would it be seamless? Would it be fast? Almost eighteen months later, the number of choices is astounding. Before we start, though, an important note: VMware is still a beta product, and the newest version of Parallels is also not complete. Even though both products are not final, each can be analyzed on their relative merits.
VMware
Why start with VMware? Perhaps one reason to start with VMware is its long track record with virtualization products. Lets examine some of what VMware brings to the table.
USB Support
As VMware has had eight years of development for Intel processors, the Fusion beta brings full USB 2.0 support to the table. As a result, almost any device that is attached works at its full native speed. How huge is this? Let's take a look at the interface.
Figure 1
Figure 1 shows a Palm Treo 700p connected. If the device is connected at a low speed, Windows XP warns about a low speed device being connected. Note also the complete list of USB devices across the top of the interface. Each can be enabled or disabled with the simple click of the button. Also included is the Apple IR receiver, the Bluetooth adapter, and the built-in iSight. Before each can be activated however, a Boot Camp driver disk is needed, as Windows XP does not include drivers for Apple specific hardware.
SMP Support
Multiprocessor support, SMP, allows both cores of the Intel Core 2 Duo to process information. Programs that have been optimized for multithreading can take full advantage of both processors. Additionally, operating systems that have been optimized for 64-bit operation can be used, including almost any version of Linux, Windows XP 64-bit, as well as other BSD operating systems. How easy is it to configure?
Figure 2
Figure 2 shows the VMware interface as it exists today. By default, the virtual machine will use a single processor, but a simple click enables the use of 2 processors. As described by VMware, it is a 'dead simple' way to activate both processors. Figure 3 shows how it is enabled at installation time.
Figure 3
64-Bit Support
While a relatively small number of programs take advantage of being able to run in a 64-bit environment, it can be needed by certain applications that take advantage of a 64-bit architecture. In particular, running Windows 64-bit server versions is simply done. At install, choose the appropriate 64-bit operating system. Figure 4 shows an installation of Windows Server 2003, Enterprise edition.
Figure 4
If a 64-bit operating system is a requirement, VMware fulfills that need.
VMware Virtual Appliance Marketplace
The availability of the Virtual Appliance Marketplace is perhaps one of the most interesting aspects of running VMware Fusion. Many different appliances have been pre-created, and simply require a download. Everything is preconfigured from the start, allowing evaluation of technologies and products without the configuration overhead. It is even included as a link in the interface for the application, giving direct access to the marketplace. Many security products, email appliances, Linux distributions, as well as a host of other applications are available. As an example, Figure 5 shows the Zeus Traffic Manager virtual appliance. A download and unzip is all that is required! How easy can it get!
Figure 5
Hardware
VMware also brings its set of tools to the table. It not only installs tools in a virtual Windows environment, but can also install the toolset in Linux and FreeBSD! An RPM file is provided for Linux, as well as a compressed binary file. For FreeBSD, the file is a compressed binary file.
Another added advantage is the inclusion of a 3D video driver. Is it good enough to play video games that require advanced graphics? Probably not, but it is good enough to run programs which require 3D graphics such as AutoCAD. The last advantage is the use of a Gigabit Ethernet connection.
These are some of the features that are unique to VMware today. It is important to also remember that VMware is still months away from a final release, and may or may not gain new features in the interim. Having looked at VMware, let's turn to VMware's main competition, Parallels.
PARALLELS
Parallels provided the first entry into the marketplace of virtualization on a Macintosh. Even though Parallels was the first, many of the features are revolutionary. Let's take a look!
Coherence
The newest addition to Parallels product is termed Coherence. From Parallels' description, "With Parallels Desktop for Mac you can now run all the applications you need without switching between Windows and Mac OS X! Coherence, a new feature built-in to every copy of Parallels Desktop, shows Windows applications as if they were running natively on your Mac." Rather than describe this feature, a screenshot really shows it off quite well.
Figure 6 Ð Windows and OS X co-existing. Note the Finder toolbar, Windows Word and Mail.app all present.
Take a close look at Figure 6. Note the appearance; it appears as if Windows is not running at all! Other nice benefits of this feature are the rounded corners, and the appearance of an icon in the Dock. It truly makes it a much more Mac like experience, and is enabled with a simple click or key combination in the Parallels interface.
Boot Camp
Another of the newest innovative features of Parallels is the ability to use a Boot Camp partition with a simple click during installation. Why is this solution attractive? It is the best of both worlds, as sharing files from Boot Camp is now quite easy. Figure 7 shows how easy it truly is.
Figure 7
The only downside is that the virtual machine cannot be suspended when using a Boot Camp partition as corruption may occur.
Dual monitor support
In my mind, this feature, while not new, is perhaps one of the single best features of Parallels. With two monitors, the virtual machine can be presented full screen on the second monitor. While a bit disconcerting at first, it is attractive to have a full screen virtual machine.
Optimization settings
Parallels also offers options that can be used to enhance performance of a virtual machine.
Figure 8
Figure 8 shows the two major options that are available. In the emulation flags, Parallels allows users to choose whether to use VT-x support. What is VT-x? Intel has specifically coded extensions for the new Core Solo and Duo chipsets that overcome some of the limitations of the x86 architecture for virtualization. "Hardware-supported CPU virtualization extensions such as Intel's VT-x allow multiple operating systems to be run at full speed and without modification simultaneously on the same processor. These extensions are already supported in shipping processors such as the Intel(r) Core Solo and Duo processors found in laptops released in early 2006". By tapping into the power of VT-x, any virtual machine can operate at processor native speeds.
Additionally, Parallels allows caching optimizations. The ability to control the hard disk caching policy can affect unnecessary swapping from the virtual hard disk. Many Parallels users have found that this option can enhance performance.
Small things
A number of less notable features also add to Parallels appeal. Need to take a screenshot? Use the menu item. Need a DHCP address range for Shared or Host-only networking? Use the Parallels preferences to assign the desired network ranges. It also includes some of the OS X features that so many have come to love: transitions, icons in the Dock, and miniature screens of running Windows in the dock. The Parallels team has made the best effort it can to make Parallels as Mac-like as possible. These small things are perhaps some of the most attractive features of Parallels for a Mac user.
Shared features
Some features are common to both Parallels and VMware. Drag and drop functionality is now supported in both virtual environments. Take a file, drag it into the Window and it is copied over. Nice! Both products support dynamic window resizing. Grab the corner of any window and resize. The last feature is the ability to use Shared folders. Both products use networking to allow file sharing between the host operating system and the virtual environment. All of these features create a more seamless experience between host and client.
OTHER OPTIONS
CrossOver for Mac
Why consider CrossOver? The single largest reason is that it requires no Windows license. Based on the Wine Is Not an Emulator project, CodeWeavers has produced a product that supports some of the most popular Windows based applications. Officially, it supports Microsoft Outlook, Microsoft Project, Visio and Office 2000. It supports other applications as well, though to a lesser degree.
Figure 9
Taking a closer look at Figure 9, note that CrossOver is running in the X11 windowing environment. It does not affect functionality, but simply is worth noting. Additionally, note the Aqua window surrounding the program itself. It is nice to have the interface sufficiently abstracted so that it appears to just be "running" the program.
Which one is right for me?
This question is becoming increasingly difficult to answer. For a moment however, it may be useful to step back and analyze which product potentially suits your needs. Note that the view provided below is only one writers opinion...
Full Windows environment
If the sole reason one of these solutions is needed were for Windows functionality, I would choose Parallels hands down. Why? Coherence and Boot Camp support. Coherence mode really hides the Windows interface from the desktop, which certainly is very attractive to the end user. Additionally, support for a Boot Camp partition makes file sharing between partitions simpler, as well as allowing the best of either world, a dual boot machine or a virtual environment. The user no longer has to choose between the two solutions. It also has the potential benefit of patching and maintaining a Boot Camp solution, without having to reboot the machine, a non-trivial task.
Scientific or non-Windows environment
In this case, my choice would be VMware hands down. Again, why? The reasons here are bit more complex. First, the availability of tools for Linux and FreeBSD is a major advantage. Being able to use the VMware tools as one would in the Windows environment is a major plus. Secondly, often 64-bit and SMP support is needed and desired when running an operating system for scientific applications. The ability to run a virtual environment with both capabilities cannot be underestimated.
Single Windows application
If a single application is needed, such as Microsoft Visio, CrossOver may be the best option. Not having to run a full virtual environment and its associated overhead and maintenance can be a huge win. To run the one Windows application, why invest in an entire virtual environment? Additionally, by running CrossOver, potential vulnerabilities, adware and malware become a non-issue, as the environment is not a full Windows installation.
The downside
So what are some of the disadvantages of running any of these products? Let's look at CrossOver first. CrossOver's largest disadvantage is the inability to run any Windows application. The list of supported applications is quite small, and the application that is needed may not exist. Parallels biggest disadvantage is its relatively new entry into the virtualization market. Some of the features are simply not quite as advanced as one would like. Lastly, VMware's biggest disadvantage is it is still a beta product, and does not have the most Mac-like interface. One possible disadvantage is the pricing for VMware. At the time of this writing, it has not been announced.
The future
The future of virtualization on a Mac has never been brighter! Competition between vendors can only make each product better, as the free market influences features. Other possibilities might even include the ability to run a virtualized OS X environment, or even OS X Server. The sky is the limit!
Philip Rinehart is co-chair of the steering committee leading the Mac OS X Enterprise Project (macenterprise.org) and is the Lead Mac Analyst at Yale University. He has been using Macintosh Computers since the days of the Macintosh SE, and Mac OS X since its Developer Preview Release. Before coming to Yale, he worked as a Unix system administrator for a dot-com company. He can be reached at: philip.rinehart@yale.edu.