Installing Fusion and creating virtual machines
For this article series, VMware Fusion was used as the virtualization software for Mac. So, before any virtual machines (Windows, Ubuntu / Linux) were created, Fusion software was installed on the Mac. Please refer to the following article for notes on installing Fusion on the Mac:
Installing Fusion on Mac OS X
Then a Windows Vista Ultimate virtual machine was created on the Mac with Fusion software. For notes on creating a Vista virtual machine on Mac, please refer to the following article:
Installing Windows on a Mac with Fusion
Then an Ubuntu virtual machine was created on the Mac with Fusion software. For notes on creating this Ubuntu virtual machine on Mac, please refer to the following article:
Installing Ubuntu Linux on a Mac with Fusion
Rest of this article goes through these virtual machines created in the above articles.
The Hardware for these virtual machines
Using virtual machines is a great way to use multiple operating systems on the same physical machine. In this article, the experience of using three operating systems (Vista, Linux, Linux Server) on an iMac is discussed.
Figure 1. The specifications of iMac where these multiple virtual machines are installed.
For better experience with the virtual machines, obviously, you would need better hardware (especially if you want to run those virtual machines simultaneously). Following are the specifications of the iMac where these virtual machines are created:
- Processor: 3.06 GHz Intel Core 2 Duo
- Memory: 4 GB 800 MHz DDR2 SDRAM
- Disk Space: 1 TB
This, of course, is a reasonably powerful iMac (at the time of this writing). You can easily run multiple virtual machines with less power than this. If you run one virtual machine at time, you can create and use many VMs with lot less power than this.
The virtual machine specs
I used the default suggestions given by the Fusion for the sizes of virtual machines. Following are those sizes.
Windows Vista Ultimate virtual machine
Created the Windows Vista Ultimate virtual machine with the following specifications:
- Memory: 1 GB
- Hard Disk: 40 GB
- Processor: 1 CPU
Figure 2. Settings for the Windows Vista Ultimate virtual machine created with VMware Fusion on an iMac.
This iMac has 4 GB of RAM, so, giving 1 GB doesn’t hurt. When just this virtual machine is running, Mac OS X applications still have plenty of memory (at least 3 GB).
You would be surprised to see how much you can install on a 40 GB hard disk. See below for what I installed on this virtual machine.
Ubuntu (Linux) Desktop virtual machine
Created Ubuntu Linux Desktop with the following specifications:
- Memory: 500 MB (0.5 GB)
- Hard Disk: 20 GB
- Processors: 1 CPU
Figure 3. Virtual machine settings for Ubuntu. This is on an iMac and the VM is created with Fusion.
Compared to Windows Vista Ultimate, the Ubuntu settings have been halved. Memory goes from 1 GB for Windows Vista Ultimate to 0.5 GB for Ubuntu Desktop. Even with the reduced specs, Ubuntu feels much faster. The apps open up faster and respond faster. However, the comparison here is a bit apples to oranges. I am comparing apps on Ubuntu to apps on Vista (not the exact same apps).
With the above settings, when both Vista and Ubuntu virtual machines are running simultaneously, 1.5 GB memory is gone to them (1 GB for Vista and 0.5 GB for Ubuntu). That leaves (at least) 2.5 GB for Mac OS X application. This iMac has 4 GB memory.
Linux Server Virtual Machine
This virtual machine (Ubuntu Server) is created with the same specifications as Ubuntu Desktop:
- Memory: 500 MB (0.5 GB)
- Hard Disk: 20 GB
- Processors: 1 CPU
Figure 4. Ubuntu Server Virtual Machine created with Fusion on a Mac.
When all three virtual machines (Vista, Ubuntu, Ubuntu Server) are on, they could take up to half the 4GB RAM on this iMac.
Virtual Machine Library
The virtual machines can be managed from the Virtual Machine Library of Fusion. You can get here from Window - Virtual Machine Library menuitem of the Fusion menu. From here you can suspend and set on/off on auto-starting the virtual machine when the Fusion starts. You can also delete a virtual machine from here.
Figure 5. The virtual machine library from VMware Fusion. You can see the three virtual machines - Windows Vista, Ubuntu, and Ubuntu Server – running simultaneously on this iMac.
Installations on the virtual machines
In addition to the standard installations, some additional applications have been installed on these virtual machines. Following are some notes on what applications did I install on them and where do the disk space stand at the end of it.
Applications on Windows Vista Ultimate virtual machine
The Windows Vista Ultimate was given 40 GB hard disk space (this was the default setting during the virtual machine creation with Fusion).
Figure 6. Windows Vista virtual machine File Package created by Fusion. 34 GB out 40 GB disk space has been used after installing the operating system and a few applications.
As you can see more than 34 GB out of the 40 GB has been consumed. For this 34 GB, though, I installed several applications:
- Windows Vista Ultimate (and all the stuff that comes with it)
- Visual Studio 2008 and MSDN locally
- SQL Server 2008 Developer Edition
- MS Office 2007 Ultimate (all the individual apps – Word, Excel, PowerPoint, etc.)
I am actually surprised that all this only took 34 GB with 6 GB to spare out of the allotted 40 GB of disk space for this virtual machine. For example, Office Ultimate comes with Word, Excel, PowerPoint, Access, Outlook, Publisher, InfoPath, etc.
So, you can have a full-fledged Vista without having to buy additional hardware. VMware Fusion puts all this “virtual” disk space into one convenient file package on the Mac OS X operating system. This package is named Windows Vista.vmwarevm.
Figure 7. Windows Vista virtual machine package. The virtual disk files can be seen from the Finder on OS X.
If you look inside this package, you will see a series of virtual disks. These files have the extension .vmdk (for example, the files are named Windows Vista-s001.vmdk, etc.). Most of these files have a size of 2 GB.
Ubuntu (Linux Desktop) Virtual Machine
By default, Fusion allocates 20 GB for an Ubuntu virtual machine. On the disk it only took 4.83 GB after the standard installation of Ubuntu desktop (and one other program - Eclipse).
Figure 8. Hard disk requirement for Ubuntu Desktop virtual machine created with Fusion on a Mac.
For just under 5 GB of space, you would get the following:
The standard installation of Ubuntu comes with various Accessories, Games, applications from Open Office suite, etc. I installed Eclipse (this is an open source / free development environment for Java, etc.)
Figure 9. Ubuntu virtual machine file package created by Fusion on a Mac. You can see several virtual disks for this virtual machine.
Here the virtual disks are smaller than those of Vista. So, for about 5 GB (less than 2 hours worth video), you got a full-fledged Ubuntu to test with and play with on your Mac.
Ubuntu Server Virtual Machine
By default, Fusion allocates 20 GB for an Ubuntu server virtual machine. On the disk it only took 1.7 GB after the standard installation of Ubuntu server.
Figure 10. Hard disk requirement for Ubuntu Server virtual machine created with Fusion on a Mac. Not much else is installed on this LAMP server, and hence, only 1.7 GB of hard disk is consumed.
For just under 2 GB of space (in this case), you would get the following:
- Ubuntu Server
- LAMP Server components
- PostgreSQL database
The Ubuntu Server installation lets you install a whole bunch server software -- DNS Server, LAMP Server, Mail Server, OpenSSH Server, PostgreSQL Database, Print Server, and Samba File Server. In this case, I chose to install LAMP Server and PostgreSQL database. All that complex software consumed only 1.7 GB disk space (an hour’s worth of video takes up much more disk space).
Figure 11. Ubuntu Server virtual machine file package created by Fusion on a Mac.
Comparing web browsers on virtual machines
In the figure below, three web browsers (Safari, Internet Explorer, and FireFox) are running simultaneously on three different operating systems (OS X, Windows Vista Ultimate, and Ubuntu) on a Mac. All three browsers are using the same Internet connection. Here OS X is the host operating system. Windows Vista and Ubuntu are on the virtual machines created and managed by Fusion virtualization software.
Figure 12. Safari on OS X, Internet Explorer on Windows Vista Ultimate virtual machine, FireFox on Ubuntu desktop virtual machine running side by side in Unity mode under Fusion on a Mac.
Comparing Office applications on virtual machines
In the figure below, the office / productivity applications are run in the unity mode. These applications are Pages (OS X), Word (Vista), and Open Office Writer (Ubuntu).
Figure 13. Office Software. Pages on OS X, Word on Windows Vista Ultimate virtual machine, Open Office Writer on Ubuntu desktop virtual machine running side by side in Unity mode under Fusion on a Mac
Comparing Programming tools on virtual machines
One of the greatest benefits of using virtual machines is the ability to develop and test applications for different operating systems using the same physical hardware. Here, this iMac now has Visual Studio for developing Windows applications, Xcode for developing Mac applications, and Eclipse for developing Linux applications.
Figure 14. Integrated Development Environments. Xcode on OS X, Visual Studio on Windows Vista Ultimate virtual machine, and Eclipse on Ubuntu desktop virtual machine running side by side in Unity mode under Fusion on a Mac.
Notes on good things and not so good things with VMware Fusion
The possibility itself
Fusion (and other virtualization software) provides this incredible possibility of creating multiple operating systems on the same physical machine. From the numbers above, for under 43 GB of hard disk space, three complete operating systems are installed. For this space, you can install Vista Ultimate with all the Office and development tools, Linux and dev tools, and Linux Server with all the pieces of LAMP.
For personal use or dev/test scenarios, this would serve as a perfect setup.
Ease of Creation, Use, and Deletion
These virtual machines can be created in a hurry. Deletion of a virtual machine is a matter of deleting just one file package. I think using multiple operating systems on a single machine is much more convenient than using multiple physical machines. Here, you can just close the window of the virtual machine and come back to it by just opening up window. Starting and stopping virtual machines is faster and easier than the real ones.
Unity and Other View Modes
I like the Unity mode. These virtual machines can be displayed in several modes: Full Screen, inside a Single Window, or Unity. I like the Unity mode. Here the applications from individual virtual machines can be displayed in their own windows. They retain all the behavior of windows from the original operating system (they don’t look like faked-out OS X windows).
I find the performance of most applications very acceptable, even better than you would think in an individual user scenario. However, whenever graphics are involved, I feel a bit of a slowdown. In some games, I could sometimes see the trail of UI refreshing. But, overall, this is not bad.
High-end Graphics and Games
Graphics that require access to the high-end graphics card don’t work in Fusion (at least in version 2.0). That means Aero from Windows Vista doesn’t work. If you want that glassy/glossy look of Aero, you are stuck with Vista Basic.
Figure 15. Aero is not possible on a Vista virtual machine created with Fusion 2.01.
Similarly, you won’t be able to enable high-end graphics in Ubuntu Linux.
Figure 16. Desktop effects are not possible on Ubuntu virtual machine created with Fusion 2.01.
Full Screen Video
Video inside a browser is perfectly possible in both Vista and Ubuntu. I could not run full screen video from a web browser in a Vista virtual machine. However, this was perfectly possible inside an Ubuntu virtual machine.
Figure 17. Watching Family Guy on hulu from Internet Explorer inside a Windows Vista virtual machine created with VMware Fusion on a Mac. Second half of the picture is watching hulu from FireFox on an Ubuntu (Linux) virtual machine created with VMware Fusion on a Mac.
DVDs don’t seem to work in either of the virtual machines (both Vista and Ubuntu). Windows Media Player refuses to show the video from the DVD. Ubuntu seems to be trying but not watchable. I did not try to look deeply into this problem. Obviously, I am not overly worried about this -- because, for personal use virtual machines don’t need to provide this functionality, because the host operating system (OS X provides this functionality just fine).
Figure 18. You can play DVD (movie Pulp Fiction shown here) on Mac OS X. But, while the DVD is recognized on both Vista and Ubuntu virtual machines, it can NOT be played on either. These virtual machines were created with Fusion 2.01.
One great thing with Fusion is the ability to Copy-Paste among applications in different operating systems. However, you cannot Copy-Paste images (at least in Fusion 2.0) between applications from different operating systems.
Accessing File Structure of another operating system
You can share folders of one OS to be accessible from another OS. You can also open a file from one OS from an application in a different OS. These are great things. But, I personally am avoiding this second part (file from one OS opened by app from another OS) as much as possible. In one occasion I got a blue screen of death in Vista when I did this. When I do this cross opening I don’t want the Vista app to mess up the native disk in OS X. This hasn’t happened, and it might just be too much of caution. One workaround: I simply copy the file from OS X file system to Vista file system and work on it.
Bugs and Fragility
One thing that you have to worry more in a virtual machine scenario (compared to the individual physical machines) is the bugs in more components. In a virtual machine setup, there are three things: Fusion (virtualization software), OS X (host), and Vista/Linux (guest). Needless to say, there are bugs and issues in all three of these pieces that are necessary for creating virtual machines.
There is possibility of your vm setup getting screwed up when you upgrade any one of these pieces to a newer version. With a physical machine for each OS, you have to worry about only that particular OS. But, for all the benefits the virtualization affords, this is an acceptable risk/problem for most situations.
Expose’ Works, but …
Expose’ is a cool feature in Mac OS X that lets you see all the windows that are currently open simultaneously. The keyboard key associated with this is F3 (see the little windows on this key on the Mac keyboard). If you press F3, you can see all the currently open windows arranged on the screen. Similarly, if you press Control-F3, then you can see all the windows of the current application arranged on the screen.
Now, a cool thing is that if you go into the Unity mode, all the windows from the virtual machine (e.g. Windows Vista OS) will be floating around just like Mac OS windows. If you press F3, all these windows (including the Vista windows) are arranged on the screen.
However, you can see the refresh issues just with the Windows windows, while the Mac OS X windows look really nice. This, of course, is no big deal.
Figure 19. Expose’ problems with Fusion based windows
When you press Command-Tab, the icons for the windows of Unity mode appear; similarly, these icons show up on the Mac OS X dock as well. In both cases, though, the icons from Windows are of lower resolution (does not look good).
Each of these virtual machines need to be maintained, meaning, the patches need to applied to each of them (manually or automatically) and perhaps, protection from viruses need to be added. You would need to do this with separate hardware for individual operating systems, as well. However, it’s possible, some virus might screw up the shared disks in the virtual machine scenario.
Just like the above issue, these potential problems are not big enough to negate all the benefits that virtual machines provide.
There are some small issues with the virtual machines, like the keyboard. Needless to say, since you are creating these virtual machines on a Mac, you would be using a Mac keyboard. So, you would be using the same Mac keyboard when you are using the Windows applications as well. There is some inconvenience here. And now and then, some keys like caps lock get messed up (get reversed -- this might be some software application in either of the operating systems doing).
Full Screen video would have problems. I tried watching hulu from the Internet Explorer inside a Vista virtual machine created with Fusion. It works fine when the Flash player is embedded inside the browser. However, it doesn’t seem to work in the full-screen mode. Seems like the problem here is that the video is player is trying to access the raw hardware, and Fusion is not allowing it.
All things considered, I like Fusion very much.
More Articles on Fusion
This article series on Fusion goes through a couple of virtual machines created with Windows Vista and Ubuntu operating systems. These articles also go through using popular applications like Microsoft Office, SQL Server, and Visual Studio on these virtual machines created with Fusion. They also discuss the pros and cons of virtual machines, graphics, sound, video, and Internet connections in them.
Article Series: Fusion on a Mac