Running Windows Apps Under Linux, Part 2: Advice on installing and configuring four useful emulators
VMware provides a very complete virtual machine environment that
emulates an Intel x86-based computer, running under Linux as the host
operating system (it also runs under Windows NT).
Since VMware emulates a PC, it comes complete with a BIOS, and you can
change BIOS parameters in the same way as with a normal PC. The
emulation is so complete that each virtual machine can have one or more
virtual Ethernet devices for networking. Networking is discussed in
more detail below.
You can download VMware from the company's Website (see Resources for a
link) either as a compressed TAR archive or as an RPM. If you have
downloaded the RPM, installation is a two-step process.
First install the RPM, using your favorite rpm command:
rpm -ivh VMware-2.0.2-621_i386.rpm
Don't worry if your numbers are slightly different, as you may have
downloaded a more up-to-date version.
Second, configure VMware to run on your system, using the vmware-
config.pl command. I will discuss that step in more detail below
because you will also need it if you install from a compressed TAR
archive, and if you change your kernel.
If you install from the compressed TAR archive, the steps are:
* Extract the contents of the TAR archive:
tar zxvf VMware-2.0.2-621_i386.tar.gz
* Run the installation script:
After asking you a few questions about where to install VMware, the
script then asks if you want to run the vmware-config.pl script. You
should answer yes if this is your first install of VMware. The
installation then proceeds, and you must read the end user license
agreement. I will discuss the configuration script below.
When you install VMware from a compressed TAR archive, the installation
script automatically runs the VMware configuration script, vmware-
config.pl. If you install from an RPM or if you change your kernel, you
will have to run vmware-config.pl manually. (In fact, if you go to run
VMware and your kernel has changed, VMware tells you that you need to
To run the script, simply type config-vmware.pl at the command line and
follow the instructions provided by the script. You may need to have a
C compiler installed on the system. If none of the prebuilt modules
supplied with VMware are suitable for your kernel, the script will
rebuild the modules. You will also be asked if you want your virtual
machines to access the host filesystem. Samba makes that possible and,
if you already have Samba installed or plan to install it separately,
you should answer no.
Lastly, you will be asked if you want to use the network from your
virtual machines. For most people, the answer will be yes. You can
enable two types of networking. One is host-only networking, in which
your virtual machines run on a virtual network and can only access your
host system and each other. The other is bridged networking, in which
your virtual machines are actually on the same ethernet as your host.
You can use DHCP to allocate addresses for your virtual machines in
Once you have installed and configured VMware, you can create a virtual
machine and have it up and running within a few minutes after the
install with VMware's configuration wizard. The wizard takes you
through the steps of allocating space for the virtual machine's disk,
which can be a partition or a large file in your Linux file system. The
wizard also allows you to attach serial and parallel ports to the
appropriate devices under Linux, so your virtual machine has the full
complement of devices it needs.
However, once your virtual machine is up and running, you then have to
install an operating system on it! That is just like installing an
operating system on real hardware. As long as your virtual machine has
access to a CD-ROM, simply place the install CD into your system's CD-
ROM and power up your virtual machine (that is, click on the power
button). Your virtual machine will run through the installation process
and reboot at the end, just as Windows normally does.
In addition, VMware comes with a set of tools for each operating system
that it supports. Those tools allow your virtual machine to gain high-
speed access to the full display on your system instead of running in a
Because VMware provides a virtual machine, it is not restricted to
running Windows. You can run quite a large number of operating systems
under VMware, including MS-DOS, Windows 9x, Windows NT, Windows 2000,
FreeBSD, and Linux. Thus, VMware is ideal for testing out new operating
systems, providing a teaching environment, or grabbing screen shots of
I also found the number of ways you can use VMware to be astounding.
The Samba team uses it to test out changes to Samba by simply running
Win NT in a virtual machine. I have used it to develop courses that
deal with the installation of operating systems, including the booting
phases, because I can very easily grab screen shots without the need
for a digital camera. Also, if you run those virtual machines out of a
virtual disk (a file in your file system) instead of a partition, it is
very easy to copy your virtual machine to another system or keep
The current version of VMware is 2.0.2, and it runs on all versions of
Linux, including SMP systems, and on Windows NT and Windows 2000. It is
priced at USD299 for commercial use and USD99 for hobbyist and student
use. You can download it from the VMware Website (see Resources for a
link). However, one of the things you will notice with VMware is that
it requires more resources than Wine or Win4Lin. For example, a VMware
virtual machine running on a 400 MHz Pentium II will feel like a real
machine running at around 200 MHz to 266 MHz.
Next Week: Part III, Win4Lin and Bochs