...making Linux just a little more fun!

<-- prev | next -->

Running Linux on Windows.

By Jimmy O'Regan

For people who need to use both Windows and Linux, there has never been a better time to combine the two systems. Virtualisation software - software which creates a virtual PC - allows Windows users to run Linux without needing to reboot, or have a separate PC.

VMWare was the first program available which provided this capability, and is still the best known. Microsoft also has Virtual PC (formerly by Connectix), and there are open source solutions available: QEmu and Plex86.

The new version of Plex86 doesn't run on Windows yet, and is therefore outside the scope of this article. In fact, while the original version of Plex86 was designed to be similar to VMWare (the project was originally called FreeMWare), the new version does not perform dynamic translation, or emulate hardware (though as far as I can tell, this is included in Bochs, and Bochs combined with Plex86 provides the same sort of functionality as VMWare).

There is also coLinux, which is similar to User Mode Linux, but runs on Windows 2000 or XP. If this interests you, you might be interested in my article, Introducing coLinux, which can be read at Linux.com.


As I said, VMWare was the first well known piece of virtualisation software, and is still the best known. It is the best choice available for a number of reasons: it offers a greater choice of emulated hardware than VirtualPC or QEmu; it is easier to set up than QEmu; and it provides support for using Linux as a guest operating system, which neither VirtualPC nor QEmu do.

Installing VMWare

Installing VMWare is no more complicated than installing any other Windows program (though I've still provided step by step screen shots: 1, 2, 3, 4, 5, 6, 7).

Once VMWare is installed, you will want to set up your virtual machine. This is as simple as setting up VMWare itself; from VMWare's main screen, choose "New Virtual Machine" from the main screen (screenshot).

Again, I've provided step by step screenshots (1, 2, 3, 4, 5, 6.) In step 5 - "Network Type" - you'll probably want to leave it at the default ("Use bridged networking") if you are connected to a LAN. Since I use ADSL, which only allows access to one PC, I have chosen "Use network address translation (NAT)".

Step 6 - "Specify disk capacity" isn't really something you'll need to change - apart, perhaps, from the size of the disk. The "Allocate all disk space now" option perhaps requires some explanation - VMWare (and VirtualPC) use Copy on Write disks by default, so their disk images take up only slightly more than the actual amount of disk space required to hold all of their data. (It's worth mentioning here that both Bochs and QEmu have the ability to read VMWare's disk images).

Once you've completed these steps, you should have a blank virtual machine that's ready for use (screenshot). You are now ready to boot it up!

Well, not quite. You're ready to boot up if you have an installation disk in your computer's CD/DVD-ROM drive, but if you want to install from an ISO image, there's one thing you need to change. On the right hand side, there's a list of devices. Select the properties of the CD-ROM device - it'll give you a prompt like this. Click the "Browse" button to locate the ISO, and select it. You can now boot from the virtual image.


There was quite a big deal made when Microsoft bought Virtual PC from Connectix - many users were afraid that Microsoft would remove support for Linux. As this Newsforge story says, Microsoft has not removed support for running Linux on VirtualPC, but they aren't providing tools for Linux to allow you to drag and drop from Windows to Linux, as you can on VMWare with the VMWare tools installed. If memory serves, there was no such Linux support from Connectix either.

The nicest feature of VirtualPC is that all disk writes are copy on write by default - you are asked when shutting down the virtual machine whether or not you want to commit the changes to the main disk image. Other than that, though, VMWare is a better choice at the moment (and not just for Linux users).

Setting up VirtualPC is so similar to setting up VMWare that it's really not worth covering.


QEmu is the only open source virtualisation program currently available for Windows. QEmu has a special version which can run Linux (without process separation) a lot faster than any other virtualisation program, using kernel modules in the guest.

QEmu is slightly more difficult to use than VMWare or VirtualPC. It doesn't have wizards to create disk images for you, but there are plenty of pre-configured images available of various free operating systems available at FreeOSZoo.org.


If you're already familiar with Linux - especially if you're comfortable with creating disk images using dd - then QEmu may be for you. Otherwise, you might be better off trying out VMWare or VirtualPC (which are available for 30 and 45 day trials, respectively).

Since I'm running out of time, I'll save writing in depth about QEmu for a future article. Since QEmu also runs on Linux, it might be more fun to write from that perspective anyway :)


[BIO] Jimmy is a single father of one, who enjoys long walks... Oh, right.

Jimmy has been using computers from the tender age of seven, when his father inherited an Amstrad PCW8256. After a few brief flirtations with an Atari ST and numerous versions of DOS and Windows, Jimmy was introduced to Linux in 1998 and hasn't looked back.

In his spare time, Jimmy likes to play guitar and read: not at the same time, but the picks make handy bookmarks.

Copyright © 2004, Jimmy O'Regan. Released under the Open Publication license unless otherwise noted in the body of the article. Linux Gazette is not produced, sponsored, or endorsed by its prior host, SSC, Inc.

Published in Issue 106 of Linux Gazette, September 2004

<-- prev | next -->