Home => Defensive Computing => Upgrading Windows <= In The News  

U p g r a d i n g    W i n d o w s

Most people are aware of two ways to upgrade an old version of Windows to a new version: an upgrade install and a clean install. There are actually four ways to approach this, each with its own pros and cons. I had prepared this topic for my Defensive Computing class when in March 2003 the topic came up in Fred Langa's LangaList newsletter. I sent Mr. Langa a long letter on the topic and he included it in the April 24, 2003 issue of the newsletter. The letter was in the Plus edition of the Langa List which is available only to paid subscribers 

Below is my letter to Mr. Langa along with his comments

This is a change of pace--- a letter so complete and detailed, it's almost an entire feature in itself. It's from Plus! subscriber--- and computing instructor--- Michael Horowitz (thanks, Michael!), and contains a wealth of great info, especially on two lesser-known upgrade options.

I'm personally more in favor of clean installs than Michael is. As Michael says, a clean install can be a good choice if the version of Windows you're upgrading has problems, because a clean install is a fresh start--- none of those problems get carried over to the new setup. I like clean installs because, in my experience, almost all versions of Windows that have been in use any significant length of time do have problems. Even if your current version of Windows seems to be OK, there's a good chance that something isn't right, somewhere in the system. A clean install gives you a fresh start, no matter what.

But if you follow Michael's wonderfully-detailed advice, you'll see that there's more than one way to accomplish a clean install; and that clean installs are just one of several options. Michael, take it away:

Fred, In your newsletter of March 20, 2003 it said you will soon be covering migration to Windows XP. I teach a class on Defensive Computing ( http://www.defensivecomputing.us/ ) which includes a topic explaining FOUR ways to upgrade an old version of Windows to a new version. The full text on this from my class handout is included below as an FYI (I'm sure you know 99% of this already). 

In a nutshell, upgrade and clean install are both poor options because you lose the old version of Windows and thus have no fallback position. The only upside to them is they can be done without much technical skill and require no other software. The other two approaches for installing a new version of Windows on a computer with an older existing copy of Windows, let you have your cake and eat it too, that is, you get to run both the old version and the new version of Windows. With classic multi-boot, you can run one at a time. With virtual machine software you can run both concurrently. The downside to both these approaches is that they require extra software, none of which is free, and also require a non-trivial amount of technical expertise. 

Just trying to give back for the excellent newsletter. --- Michael Horowitz 

Thanks, Michael! (His text continues below, just as he sent it.)

When considering installing a new version of Windows on a computer, the first issue is whether your computer is fast enough for the new operating system. Microsoft and others publish both minimum and recommended horsepower (cpu speed, installed ram and available hard disk space). You can learn about the horsepower requirements for Windows XP at http://www.microsoft.com/windowsxp .

The second issue is whether your computer and surrounding hardware is supported by the new version of Windows. Microsoft publishes a Hardware Compatibility List ( http://www.microsoft.com/hcl ) where you can see if Windows is supported on your computer. In addition, you should check your printer, scanner and other hardware to see if there are drivers for the new version of Windows. This is especially of concern when moving from a Windows 9x family OS to an NT class version of Windows (NT4, 2000, XP). 

Software also has compatibility issues. Not all software runs on all flavors of Windows. Any software that you want to continue to use, should be checked to make sure it is compatible with the new version of Windows. Windows XP was the first version of Windows to address this issue. It has a feature that attempts to fake out a program so that it thinks it is running under an older version of Windows. 

If you decide to install a new version of Windows, the next issue is how. Most people discuss two options. There are actually four ways to run a new version of Windows on your computer. 

A new version of Windows can be installed as either an upgrade of an older existing copy of Windows or on a new empty hard disk. An upgrade install places the new copy of Windows on top of the old copy. A clean install puts the new copy of Windows on your computer as if the old copy never existed. There are pros and cons to each approach.

Upgrade installation

Clean installation 

An upgrade installation is not always an option. It depends on the old and new versions of Windows. The rules for Windows XP are presented later. 

Also, you should not do an upgrade installation if the old version of Windows is having problems. If your motivation for a new copy of Windows is to fix problems with the old version, then do a clean installation of either your current version of Windows or a new version. 

Further complicating things is the fact that many (most?) copies of Windows that you buy in a retail store are not designed for a clean install. They are referred to as "upgrade" copies. Upgrade versions of Windows are much cheaper than "full" versions but are only for people who already own a prior copy of Windows. For example, the upgrade version of Windows XP Home Edition is under $100, the full version is $200 (as of February 2003). The upgrade version of Windows XP Professional sells for about $200, the full version is about $400 

Upgrade versions of Windows are intended to be used to upgrade an old version of Windows. They require proof of ownership of a previous version of Windows. When you do an upgrade installation, the proof of ownership comes from the old version of Windows found on your computer. For a clean installation, you need to provide a CD-ROM from the earlier version of Windows as proof of ownership. Even though you own a previous version of Windows, you may not have a CD-ROM to provide as proof. Many computer manufacturers stopped providing this years ago. Instead they provide only a recovery CD-ROM. 

Better Alternatives

It is safe to say, that both upgrade installations and clean installations are poor choices. There are two other options that offer none of the downsides previously mentioned. These next two options let you run both the old and the new version of Windows on the same computer. In effect, you can have your cake and eat it too. 

The downside to these alternative approaches is that they require some technical skill and additional software. 

The third alternative lets you run either the old or the new version of Windows, but only one at a time. When the computer starts up (boots) you are presented with a choice of which version of Windows to run. The fourth alternative, lets you run both the old and new versions of Windows concurrently!

A Third Alternative

Installing two versions of Windows on one computer is done by giving each its own dedicated partition. The old copy of Windows remains where it is, but its partition will likely have to be shrunk. The new copy of Windows is installed in a different, and new, partition. 

The vast majority of personal computers have a single partition whose size is the full size of the hard disk. In this case, this single partition has to be shrunk and a new partition created in the space freed up. 

This approach is referred to a multi-boot or dual-boot or side-by-side installation. The terms refer to the fact that you can boot (techie speak for "start up") either of two versions of Windows. 

No version of Windows comes with software that can non-destructively resize a partition. This requires a commercial product, known generically as partitioning software. Among the available software is Partition Magic from PowerQuest, Partition Commander from V Communications, Partition Expert from Acronis and Partition Manager from Paragon Software. There is also a free program, Ranish Partition Manager but the user interface is said to be very difficult and for a job like this, it is better to have technical support available. 

Note that resizing a partition is potentially a dangerous thing. Always back up your most important files first and run a full disk check beforehand. 

Also, this approach requires more hard disk space than either a clean install or an upgrade install. After all, two separate and independent versions of Windows reside on the computer. Be sure to check the amount of available space on the hard disk before even considering this approach. In general, figure on two gigabytes of disk space as a minimum amount for installing an NT class version of Windows and one gigabyte for a version of Windows in the 9x family. 

It is also possible to add a second hard disk to a computer and have each hard disk dedicated to one version of Windows. The advantage to this approach is that it can save the cost of partitioning software. In fact, a large enough hard disk can be had for roughly the same price as the partitioning software. Choosing an OS at start-up time could be handled by either the new version of Windows (if it is an NT class), the system BIOS or commercial software such as System Commander or Boot Commander. Nonetheless, you may opt for purchasing partitioning software for reasons explained below. 

The general approach of having different versions of Windows installed in different partitions can be used with any two versions of Windows. If done correctly, it does not matter which version of Windows is installed first or second. 

The advantages of this are many. You can fall back and use the old OS if the new version of Windows causes trouble. You can migrate to the new version of Windows gradually rather than in a big bang. Software and/or hardware that is not supported in the new version of Windows can be run from the old one. Also, the new version of Windows is installed cleanly which means it's less likely to experience problems. 

The down side is that it requires a reasonable amount of technical skill to set up. 

However, if the old version of Windows is from the Windows 9x family and the new version is from the Windows NT family, and there is an available empty partition for the new version of Windows, then the new version of Windows has some crude, but usable features for managing the two versions of Windows. 

During installation of the new version of Windows, the old version will be detected. Thereafter, the new version of Windows offer a list (menu) of Windows instances on the computer at start-up time. You get to chose which copy of Windows to run every time the computer starts up.

I am not a big fan of this approach however. 

For one thing, the description of the older version of Windows is sometimes wrong. Also, files get installed by the new version of Windows in the partition where the older version of Windows resides. If the time ever comes that you want to get rid of the old version of Windows, it is very difficult because the new version of Windows now depends on files in the partition with the old version. Finally, one copy of Windows sees the files that constitute the other copy, an accident just waiting to happen.

A far better approach is keep each copy of Windows totally separate, distinct and unaware of the other copy of Windows. This way, a problem in one copy of Windows can not effect the other one. Also, each copy of Windows can be re-installed, removed or upgraded with no effect on the other copy. On their own, the NT class versions of Windows can not keep two copies of Windows totally isolated from each other. 

There are also software programs that manage multiple copies of Windows on a single computer. The most popular such program is System Commander from V Communications. It offers a list of operating systems that you can chose from each time you start the computer. The software is easier to deal with than the corresponding features in the NT class versions of Windows. 

However, multi-boot software such as System Commander costs money and can be confusing to install. Also, it gets in the way of the normal Windows startup process, so if Windows fails to boot, debugging is all the more difficult. I'm not sure if it can keep each copy of Windows totally separate. Total isolation of each copy of Windows requires up-front (pre-installation) planning to hide the partition with the old version of Windows. At the time the new version of Windows is installed, the computer thus appears to have an empty hard disk. This worked better with the 9x versions of Windows. Windows 2000 and XP will see the hidden partition at install time, but they can be directed to ignore it both at install time and after the fact. 

You can have total isolation each OS, a 100% normal boot process (i.e. no multi-boot software) and still run either OS. The trick is a program called pqboot included with Partition Magic which has to be installed in each copy of Windows. The computer will always boot the last used OS. If this is not the OS you want to run, pqboot can be run to shut down the current OS, hide its partition, and boot the other OS. There are DOS and Windows versions of pqboot. The DOS version supports command line switches. In the best case scenario, there can be an icon on the desktop that invokes the DOS version of pqboot to shut down the current version of Windows and start up the other version. This automated OS switching requires only that the user double-click. 

Data files can be made visible to each OS by placing them in a logical partition within an extended partition. Pqboot makes no changes to logical partitions. Of course, this data partition has to be formatted with a file system (FAT16, FAT32, NTFS) supported by both versions of Windows. 

A Fourth Alternative

Finally, there is yet another totally different approach. Providing the best of all possible worlds, this approach lets you run both the old and the new version of Windows at the same time. You start up Windows, in the same manner you start any other application, such as Word or Excel. 

This is done using virtual machine software. Two companies offer this software for home use, VMware and Connectix. They vary in the flavors of Windows they support and in cost. VMware [both the product and company name] costs $330, Virtual PC from Connectix is $230. Connectix was acquired by Microsoft in March 2003. 
Update: As of August 2003, it is now called Microsoft Virtual PC
Update: November 2003. Microsoft is about to release Virtual PC 2004. It will run both Windows and Linux in Virtual Machines, but Microsoft will not offer any support for Linux VMs. The price has been lowered from the $229 Connectix charged to $129. 

These products are installed on the old version of Windows (know as the host OS), just like any other software. When you run them initially, you create a Virtual Machine with a virtual hard disk and virtual RAM. Then you install a new copy of Windows (known as a guest OS) inside the Virtual Machine. Virtual machines are logically powered on and off, simulating a real computer. Powering a Virtual Machine on/off is somewhat akin to opening and closing a document with a word processing program. 

There is no limit to the number of Virtual Machines you can define and use other than the hard disk space on your computer. The speed of your CPU and the amount of RAM in your computer, limit the number of Virtual Machines that be run concurrently. When a Virtual Machine is running, the interface to it is a normal Windows window, which can be minimized and maximized. The virtual machine is just another running application. You can switch between a virtual machine and other applications in the usual way (task bar, alt-Tab, etc). VMware offers a full screen mode, running a virtual machine in full screen mode makes it really look like a real computer. 

VMware and Virtual PC have limitations on the versions of Windows they can be installed onto (host) and the versions of Windows (and Linux) that can be installed in a Virtual Machine (guests). In addition, the guest OS may have limitations that prevent it from running inside a Virtual Machine. Two examples are BIOS locked copies of Windows and the product activation feature of Windows XP. 

One caution with VMware, the thirty days of technical support starts the day you get the software, whether you install it or not. 

Note again, these final two approaches require a non-trivial amount of technical expertise. 
Update: An article on server virtual machines from ZDNet October 8, 2003. 

Some Windows XP Advice

Most likely, the new version of Windows being installed is XP. Many programs originally written for Windows 95, 98 or Me will not run correctly under XP. For the most part, the burden of researching this falls to you. For every program you care about, go to the web site of the vendor to see if it is supported under Windows XP. Be especially sure to check anti-virus and firewall programs. 

As for an upgrade install (XP on top of an older version of Windows), the Home Edition of XP can be installed on top of only Windows 98 and Windows Me. The Professional Edition of XP can be installed on top of Windows 98, Me, NT4 (only SP6) and 2000. If you are running Windows 95 (or 3.1 for that matter) you can not upgrade to XP, instead you will have to opt for one of the other three approaches. 

If you are installing XP on top of an older version of Windows, then you can use a program on the Windows XP CD-ROM called the upgrade advisor. It checks for some programs known to be incompatible with Windows XP. You can run it from the XP CD (assuming it is the D disk) with
         D:\i386\winnt32 -checkupgradeonly 

This program is very limited in its scope however. 

These articles offer some advice specific to XP upgrades:

  Back to Home Page Viewed ? times Created August 2003
Last Updated: December 2, 2003