Every new operating system brings enhancements and additions to all aspects of computing, from the user interface up to performance. However, they often bring problems when it comes to software compatibility. Running applications always relies on the foundation that is the main operating system. XP Mode is a new innovative solution of Microsoft to bundle their proprietary virtualization solution into Windows 7 and alleviate compatibility problems for good. Let’s demystify it.
In this article we won’t get into presenting Windows 7 since everyone and their dog has already heard of it and is anxiously waiting for its official release. Most people have been following the headlines and trying out different beta/RTM versions for months. On the other hand, XP Mode is the feature we want to deeply look into, find out its roots, its limitations, and how it helps eliminate compatibility issues. If it does eliminate those issues, that is.
We must assume that you are familiar with operating system virtualization. If not, please take a moment to read the following article: An Overview of Virtualization Solutions. Non-technically speaking, virtualizing another operating system is creating a virtual environment that behaves exactly like an individual machine. It relies on the hardware of your physical computer, of course. It is an abstract emulated environment.
Virtualization is not something new; it’s been around since the past decade. There are numerous third party solutions—some free, others commercial—that offer a unique set of features and fancy functions, but in essence, they are all the same. Some perform slightly better, others are more user-friendly; you name it. Microsoft has developed their proprietary virtualization solution and it’s called Virtual PC.
Windows Vista was criticized everywhere due to the incompatibilities it brought. Ever since its launch, businesses and large corporations have skipped Vista because they were “afraid” and did not think the costs of making the migration were justified, due to the potential incompatibilities that may happen in the end. Windows 7 is a different beast entirely. Microsoft did not want what happened to Vista to happen with Windows 7.
XP Mode comes to the rescue. Microsoft thought about implementing a stripped- down version of their virtualization solution, the Virtual PC, and make the process of running an instance of Windows XP inside your Windows 7 main OS really seamless. In short, that is what XP Mode is about. Starting on the next page we’ll examine it further.
At the time of writing, XP Mode comes as a Windows update, and is approximately 450 MB in size. It is flagged as a beta, but this is acceptable since Windows 7 is also just a Release Candidate at the moment. Since it is based on Virtual PC, you also need to download and install Virtual PC. You can grab these from this page.
There are hardware limitations in terms of the ability to run Virtual PC and virtualizing operating systems. Microsoft’s virtualization solution is strictly based on programming techniques and strategies that require a somewhat new CPU technology that’s called Intel-VT(Virtualization Technology) or AMD-V. These are all registered trademarks of their respective owners. You can use CPU-Z or Intel Processor Identifier and check for the listed set of technologies supported by your processor.
Should your CPU support the required technology, then don’t forget that it also must be enabled from your BIOS. Once these are done, then you are ready to install Virtual PC and the XP Mode update package. Please understand that not all recent Intel processors support Intel VT-x, compared to AMD, where most processors manufactured post-2006, starting from Athlon-64s (Orleans) up to Phenom-I and -IIs, do support it.
Explaining why these technologies are required is beyond the scope of this article. Consider only that the way Microsoft’s Virtual PC was written heavily relies on these virtualization acceleration technologies. Without these, they just cannot work.
All right now, moving on, assuming that your hardware satisfies these requirements, we can grab and install Virtual PC along with XP Mode. In our test environment with 4 GB of DDR2 memory, a new generation Core2-based processor with a DFI LP P45 motherboard, the entire process of setting up XP Mode (“first start”) took hardly five minutes.
The entire process is automated (unattended) and requires almost no user interference at all. At the beginning you just need to accept the License Agreement and type in your password. XP Mode comes with an already-licensed version of Windows XP. Therefore, you aren’t asked for it; take this as a gift from Microsoft for the OS they have discontinued on purpose. Keep in mind, though, that XP Mode doesn’t equal a full-fledged OS.
It should also be pointed out that XP Mode will not be available on all versions of Windows 7, but only the Professional, Enterprise, and Ultimate editions. The way Microsoft implemented XP Mode is by using specific features of Virtual PC in order to enhance the seamlessness of the entire user experience, such as clipboard sharing, network-sharing connectivity (Internet works “right away”), accessing drives of your Win 7 OS, etc.
Let’s find out the technical aspects of running XP Mode. How well does it performs?
XP Mode is not the same as running Windows XP on a third party virtualization solution (such as VMware, VirtualBox, or even Microsoft’s Virtual PC 2007). They claim the code for Virtual PC was slightly updated, and it’s faster. What we do know is that XP Mode is a stripped-down, ready-to-run, much more lightweight but fully capable version of XP that was customized just for this purpose.
Integration with your current Windows 7 host operating system is possible because of the renowned RDP mechanism. RDP is an abbreviation for Remote Desktop Protocol. Basically, you are accessing your virtual machine as if it was reachable just like any other computer from a network, only in the case of XP Mode, the destination is your own computer as well. Think of it as “loopback.”
According to some official documentation, the RDP protocol was also enhanced, and the new RDP 6.1+ was implemented into XP Mode. Since the guest machine (your virtualized Windows XP) is found on the same machine, the new RDP makes it an almost entirely seamless integration, without significant performance hits. But as expected, for a myriad of reasons, OpenGL/Direct 3D-based applications will not work.
This is understandable, since anyone who expects native execution from an abstract virtualized machine is just not realistic. That will never happen, no matter how much IT advances or how powerful our technologies become; nothing that is ever emulated can offer the same 1:1 kind of performance. In the next decade, I might be proven wrong.
Windows XP Mode comes with a restriction in terms of guest applications: they cannot write to the Program Files and Windows’ folders of Windows 7. Furthermore, you don’t have that much control over what to share between your XP and Win 7; you can either share entire drivers or nothing at all. This could be customized if you’ll be doing virtualization with a third party feature. You are also lacking drag-and-drop.
By default, XP Mode auto-publishes the applications that are installed within this virtual XP into the start menu of your Windows 7. This can be disabled. Virtual PC is configurable just like any other third party virtualization application. The virtualized XP can be joined into a domain; it can act as an individual machine. You can enable Windows updates, and so forth.
The way applications are executed and shown as part of the Windows 7 might be misleading to some users. Basically, the implementation tries to enhance the user experience by making it appear as if those apps are being run on your main OS, so it reduces the clutter (unlike working inside a VM window). If you move around their windows or resize, you will quickly realize that are in fact part of the XP Mode.
XP Mode also allows only one user channel to be open at a time. This means XP Mode cannot be run simultaneously by multiple users on Windows 7, despite being allowed to login and use the other features of the main operating system. This is mainly because the count of RDP connections is limited. Terminal Services is the kind of application that allows more in the case of servers, but comes for a fair price. There are unofficial workarounds to fool this and allow more, but they violate the EULA.
As you can see, we’ve reached the last page of this article. It’s time to draw some conclusions. Without any doubt, the addition of XP Mode is something that should be appreciated, and it is a promising solution; however, it is far from the perfect rescue app that can motivate the entire migration to Windows 7. It may help to gather a few more percentage points of users that were worried about compatibility, but it’s not an OS-saver.
It is really important to understand what XP Mode is in reality. It is nothing that you couldn’t do already with any other third-party virtualization solution if you were to spend a few more minutes. However, what really makes XP Mode is a free license for an operating system that was already discontinued and retired from the market. And it also gives it a quick unattended setup with particular functions to make it easier.
It also comes with several serious limitations. Some are hardware-based, and inherited from the father of XP Mode, the Virtual PC; others are virtualization- based drawbacks, such as the inability to support 3D the way a native OS could do. That simply won’t happen no matter how much you struggle. This is not a feature that saves gamers, since expecting to run any half-decent modern game in XP mode is just silly.
But if we take XP Mode for what is it, it is an awesome feature in the case of a small business or organization that is still relying on outdated software to accomplish their everyday productivity routine. There are numerous reasons why some companies stick with their old software—mainly to reduce costs, if they don’t see any real need for upgrade, or perhaps the software was discontinued and no more support is provided for it, but training personnel in how to use a new suite comes with a significant amount of cost and effort.
XP Mode can also be considered a step forward in software development. It makes it clear that our hardware devices are becoming powerful enough to leave behind backward compatibilities and rather allow virtualization of older software-driven platforms, if need be. This improves overall performance of software, since dropping backward compatibility techniques reduces clutter and improves efficiency by far.
In closing, I’d like to invite you to join our experienced community of technology professionals on all areas of IT&C starting from software and hardware up to consumer electronics at Dev Hardware Forums. Also, be sure to check out the community of our sister site at Dev Shed Forums. We are friendly and we’ll do our best to help you.