Despite the roaring popularity of Linux, many people shy away from giving it a shot themselves, or using it as a full-time replacement for their current operating system. You can’t really begrudge people for using what they’re comfortable with and what works for them. Many people have put hundreds of dollars worth of software into their current operating system and the thought of throwing that all away and starting over again can be a little daunting.
But what can you do? You can dual-boot between various operating systems, but that becomes tedious at best. Some people, such as developers who don’t have the luxury of multiple computers with different operating systems installed on each, have no choice but to do this. The same goes for the people who want to play games in Windows and work in Linux. Or do they have a choice?
They do, in fact, have a choice. And a very nice choice at that. VMWare is a program that allows you to run different operating systems within WindowsNT or Linux. It’s not a Windows or Linux emulator like WINE or DOSEMU. In fact, VMWare is a hardware emulator. VMWare creates a Virtual Machine in which it can run various guest operating systems directly from your desktop. This Virtual Machine emulates everything that your guest operating system will need in order to function correctly. It emulates a BIOS, serial ports, parallel ports, sound cards, ethernet cards, RAM, and your mouse. It provides floppy disk access, as well as CD-ROM access so your guest operating system can make use of the actual hardware of your computer. And by using the VMWare Tools that come with the product, it can even emulate an SVGA adapter.
Sounds pretty impressive, doesn’t it? That information alone was enough for me to look at it a few months ago when the 1.1 version was released. At the time I was attempting to use it on a Pentium 166 with 64MB RAM. Yes, it was a little slow, but it was very nice to see Windows98 loading on my Linux desktop. Unfortunately it did not support DirectX, so the majority of recent Windows games were out of the question. At that point, I decided that VMWare, despite being an exceptional and innovative product, was not for me.
In January, VMWare 2.0 beta was announced. Anyone can download the beta, or the 1.1 release version, and try it for 30 days prior to purchasing by downloading a demo license. There were a number of bug fixes and small feature enhancements in the beta, which was not really any cause for excitement. The excitement was caused by it providing support for Windows2000 and experimental support for OS/2.
At this point, VMWare can handle Windows95/98/NT/2000, Linux, FreeBSD, MS-DOS, Windows 3.1, and OS/2 as guest operating systems. It comes with tools for all of these operating systems to increase the speed and reliability of the guest operating system while running on your Linux or WindowsNT desktop. The only thing it’s missing now is support for BeOS, and who knows what the next major version might bring?
After downloading the VMWare 2.0 beta for Linux with OS/2 support (you can download the beta with or without OS/2 support because it is so experimental), I installed it and was quickly up and running. VMWare claims that the minimum requirements for the Linux version are: Pentium II 266mHz or faster, a minimum of 96MB RAM, Linux kernel 2.0.32 or higher, and Xfree86 220.127.116.11 or higher, so it does need quite a bit of horse power.
I installed VMWare on a Pentium II 350mHz with 196MB RAM. The more RAM you have available, the happier VMWare will be, and the faster your CPU, the better. Let me make something very clear: You pay a price in CPU usage and memory consumption when you play with VMWare. It requires quite a bit of horse power. When you think about it, this makes sense. If you define a Virtual Machine with 48MB RAM, you’re taking roughly 48MB RAM away from the host operating system. If you only have 64MB RAM to begin with, you’re running a smooth Virtual Machine at the expense of your real desktop.
The first guest operating system I installed was Windows98. Setting up the Virtual Machine was relatively simple, and the VMWare wizard makes it easy and straightforward to configure. After I was finished with the setup wizard, I went into the Settings pulldown menu and selected Configuration Editor. In the Configuration Editor you can fine-tune your IDE setup, configure SCSI support, edit the floppy and ethernet adapter support, modify serial port and parallel port settings, configure mouse settings, sound, memory, and miscellaneous settings. By default, the setup wizard takes care of everything except the SCSI, sound, serial, and parallel port settings, so there was very little to change.
Turning on the Virtual Machine, I just made sure that the Windows98 install disk was in the floppy drive and the Windows98 CD was in the CD-ROM drive, and it automatically booted from the floppy disk. The basic options I selected for my Windows98 guest operating system where a hard drive of 600MB, bridged ethernet, and 48MB of RAM; enough to get a basic Windows98 installation going.
After running fdisk to create a partition and re-booting, then formatting the new partition, I was ready to begin the Windows98 setup. The first thing anyone using VMWare will notice is how exceptionally slow it is. The Windows98 installation estimated 175 minutes for the installation. It actually took a little over 3 hours to install Windows98 in the Virtual Machine. This is how slow VMWare is for installations, and the 196MB of physical RAM I had didn’t make it go any faster. I decided to take a look at the top output during the install and was amazed to see VMWare use on average 49% of the CPU and 38% of the available memory during the install. As previously mentioned, VMWare can be a bit of a pig on your resources, and top provided the proof.
However, once Windows98 was completely installed, I went to install the VMWare Tools to obtain better speed and performance. The nice thing about this new version of VMWare is that it comes with the tools in a very intuitive manner. At the Windows desktop, I pressed [Ctrl][Alt][Esc] to restore the mouse to my Linux desktop and selected the File pulldown menu. Near the bottom there is an option to Install Tools Floppy. Selecting this basically tricks the operating system into thinking there is a floppy disk in the drive containing the VMWare Tools. Unfortunately, this is only available to guest operating systems using Windows or Linux. It does not come with the Tools for OS/2 or FreeBSD. If you’re installing a guest operating system of that type, you’ll need to download the tools from their website.
After installing the VMWare Tools and re-booting the system, Windows98 came up very fast. I immediately changed the display adapter properties to the SVGA adapter that the VMWare Tools installed, and was able to set my screen size to 800×600 resolution mode (my Linux desktop is in 1024×768 resolution). Using the standard VGA or the supplied SVGA adapter, you can still notice a little bit of lag, but it isn’t overly bad, and using Windows98 within the VMWare virtual machine was actually enjoyable. It’s not every day you see Windows98 running inside of a window on your Linux desktop!
Right out of the box, Windows98 had found the virtual ethernet card, obtained an IP address via DHCP, and configured itself accordingly, so connecting to the internet shortly after the installation was complete was very simple. Within moments I was looking at the VMWare website within Windows using Internet Explorer even while I had the Linux version of Netscape sitting at the same page on my primary desktop.
Unfortunately, this version of VMWare still has poor support for DirectX as did it’s predecessor. None of the DirectX-requiring Windows98 games I installed were able to run because of this. However, for those not prone to playing games, the speed and ease of installing Windows inside a VMWare virtual machine make it well worth your while to look into. I have heard that WindowsNT performs even better in a Virtual Machine than Windows98 does. Unfortunately, I’m not able to verify this as I do not have a copy of WindowsNT to test it with.
I do, however, have a copy of OS/2 which is why I downloaded the version with OS/2 support. I gave my new OS/2 Virtual Machine the same core items as the Windows98 Virtual Machine. Again, it had a 600MB virtual drive, bridge ethernet, and 48MB of RAM available to it. The OS/2 install took only 1:45 hours, a much smaller time-frame than the Windows98 install. Using top on the Linux desktop, I saw VMWare average roughly 94% CPU usage and 37% RAM usage, however. Perhaps the install went faster because this time VMWare used twice as much CPU as it did during the Windows98 install. The OS/2 GUI seems to perform a little faster than the Windows98 GUI as well, but I wanted to get the OS/2 tools installed to really take advantage of the speed and better graphics it would give me with the SVGA drivers for the virtual video card.
Much to my dismay, after the OS/2 install was complete, the sound card was not recognized. The virtual ethernet card was recognized and during boot-up, OS/2 displayed the card’s properties, but the networking support, both NetBIOS and TCP/IP, did not work and a number of drivers were not loaded. In OS/2, I attempted to correct the problem in the system configuration, however the card that VMWare emulates is a Plug and Play card and I was unable to hard-set any IRQ or I/O settings, effectively cutting off my Virtual Machine from the rest of the world. It did, however, obtain an IP address via DHCP from my cable provider, which I found rather strange. I have a feeling the problem is a bug in the experimental OS/2 code, or a problem with the order in which OS/2 loads it’s device drivers. Either way, a little more work is required to get OS/2 working properly with networks under VMWare. It should be noted, however, that VMWare claims the OS/2 support will only work with OS/2 Warp 4 using FixPack 12 and Netscape 4.06 or higher. Because I was unable to connect to the internet, I was unable to download and install FixPack 12, so perhaps the problem was there.
Regardless, the OS/2 Virtual Machine worked just fine despite the lack of sound and networking. I’m sure the VMWare Tools for OS/2 would speed it up quite a bit, and provide various screen resolutions using the SVGA adapter it comes with, but running OS/2 locally, in VGA mode, does work just fine.
Lastly, I decided to try a Linux install in a Virtual Machine and chose Corel Linux as the distribution I would install. Again, I created a Virtual Machine with the same hard drive, network, and memory settings as with the two previous Virtual Machines and hoped that the VMWare BIOS would support booting from a CD-ROM. It did, and the Corel Linux installer was loaded and I was given the installation screen. After partitioning my hard drive for a 48MB swap partition with the remainder going into the root partition, Corel Linux began the default pre-selected package install. The Corel Linux install only took 40 minutes to complete and I was sitting at a KDM log in asking for the root password to enter my Virtual Linux Workstation.
Using the VMWare Tools floppy installation method as I did with Windows98, I was able to mount the virtual floppy, copy the TAR/GZip archive on it to a temporary directory, and unarchive it. After running the install program, which launches the toolbox daemon in the background, I noticed a remarkable increase in the speed of the Linux Virtual Machine. Everything was correctly found and configured, including the virtual ethernet card, and I was able to connect to the internet.
The only guest operating systems I did not try were MS-DOS, Windows 3.1, Windows95, WindowsNT, Windows2000, and FreeBSD. But the tests I did perform were adequate for me to come to the conclusion that VMWare is a mighty powerful utility that many people, whether new to Linux or not, will appreciate. The ease of installation, and the provided VMWare Tools make using guest operating systems very similar to using them directly as your primary operating system. Aside from a few differences, there is very little to distinguish the two apart.
For the gamers out there, I’m not sure if VMWare will ever support DirectX properly. Because of the nature of DirectX dealing directly with video hardware, it would be difficult to write software that could emulate a video card with the precision that DirectX requires. But, considering what VMWare has accomplished so far, it might be something included in a future version. At this point, however, if you’re looking for a way to play your Windows games under Linux, you’ll have more success trying to make WINE behave properly than you will trying to get it to work under VMWare.
For programmers and developers, and especially for those dealing with cross-platform programs, VMWare is especially ideal. Imagine being able to share data between two entirely different operating systems on the same computer simultaneously. No need to boot into another operating system completely to compile software anymore. The ability to do this easily exists by using VMWare.
Other practical uses for VMWare are for website administrators. People who use multiple browsers on multiple operating systems know that websites can look and react differently depending on both browser and operating system. VMWare provides a simple solution to test your website with any number of browsers and operating systems simultaneously, to ensure your website has the optimal look for any system that might be viewing it
As well, people who provide technical support will find VMWare to be an asset. Imagine being in a call center that deals with a program on different platforms and having to re-boot every time someone calls in who is using an operating system different from the one you are currently running. Think of the time wasted on the phone while you shutdown and re-boot your computer into the operating system your client is using! With VMWare, this is no longer an issue. Simply remain in the operating system you primarily use and load the Virtual Machine that runs the same operating system your client is using.
The uses for VMWare are virtually endless, and I’m sure you’ll all agree that some of them are almost necessary. In this age of multiple operating systems and diverse computing environments, VMWare is a practical time-saver. The previous version of VMWare performed very well, but the new version 2.0 will see an increase in features to make life even easier. Some of the exciting new features in version 2.0 include the VMWare Tools floppy installations. But beyond that, VMWare has included support for virtual SCSI devices for all of the guest operating systems except for OS/2. It also allows for automatic Samba file sharing when running Windows as a guest operating system within Linux. It also provides for shrinking disks to reclaim disk space. In previous versions, if you defined a 600MB virtual hard drive, it would take up exactly that much space as one large file on your physical hard drive. Now, VMWare only uses the hard drive space it requires up to the maximum defined virtual hard drive size.
VMWare version 2.0 is scheduled to be released at the end of March 2000. Anyone who buys a copy of VMWare 1.1 right now will receive a free upgrade to the 2.0 version as well, so if you’re seriously considering VMWare, there is no need to wait. For all the features VMWare provides, pricing is very reasonable. For students and hobbyists using VMWare in a non-commercial environment, VMWare is discounted at $99USD. For everyone else, VMWare costs $299USD per license. For more information on VMWare, or to download a demo version, visit the website at www.vmware.com and enjoy not issuing shutdown -r now all the time!