|
Tech forum
Exploiting Virtual PC
Often
a single technical user requires multiple machines with differing OS versions,
database configurations, network adapters and so on. Usually, we need to setup
these machines as separate physical hardware resources.
Virtual PC allows you to run varied combinations of OS, memory, application
software and network configurations on a single physical PC. It is like having
multiple machines within a single physical machine and base OS.
VPC is a software layer that emulates a complete set of PC hardware right
from BIOS, RAM, Hard Disk, Peripherals, etc. Therefore, you can have a base
OS of say Windows XP running VPC software and then boot into a completely separate
instance of Windows XP or any other supported operating system (DOS, Windows
95, Windows 2003, OS/2). Further, you can potentially load other operating systems
like Linux, FreeBSD, etc. 
Virtual PC is now a Microsoft product. It was earlier owned by a company Connectrix,
which was acquired by Microsoft.
Once a VPC is configured, it is saved as files. It is then possible to simply
copy these files to another physical machine which is running VPC software and
then reload the instance of VPC. No setup or configuration activity needs to
be repeated.
The need
Now that you know what VPC offers, think of the scenarios when you would find
this useful.
Here are some common scenarios.
1. You are a trainer. The training lab in your institute consists of, say, 18
PCs. Depending upon the training topic, you need to reinstall the OS and other
products before every training program. With Virtual PC, you need not reinstall
the base (host) OS. You can load VPC software on each of the machines, once.
After this is done, all that you need to do is create a VPC image once, as per
the training prerequisites, and copy that image onto each machine. Thats
it!
Imagine the hours of work and pain it saves every time there is a training on
a new topic. You can pre-configure images for your regular training courses.
This will also help you in setting labs at customer sites or other locations
quickly and accurately.
2. As an administrator, you often have to create a test setup for a new application.
This typically involves having spare hardware of correct configuration. Often
this is not available.
Using VPC it is extremely easy to setup the new application on an existing hardware
without disturbing the host machine. This way, you can load the VPC and test
the application on demand.
3. Compatibility testing is a mandatory if you create packaged products. You
need to test your software on various combinations of OS versions, service pack
levels, database driver versions, display resolutions and so on. This is a daunting
task because you need to have a large number of physical machines to handle
the sheer number of configuration combinations. Using VPC you can dramatically
simplify this process. All that you need to do is to create a VPC for each configuration
combination once. Later you can use a VPC to test your software. Later you can
restore the base configuration (for another round of testing) by undoing the
application level changes. This is called undo disk feature.
4. When you want to show a demo or pilot of a software which has client and
server component, you must have two networked machines.
Using VPC you can have the server and client (or multiple
server) components in two separate VPC images or you can use host machine to
act like server or client. This eliminates the need for having two physical
machines and simplifies the pain involved in delivering live presentations for
complex products.
I am sure that, based upon these scenarios, you have got enough ideas of when
to use VPC.
Availability
This product is available from Microsoft. The evaluation edition can be downloaded
from the website. MSDN Universal Subscribers get a VPC edition by default.
Although you can load any x86 operating system on VPC, it still requires the
base license for host as well as each VPC OS from the related vendor.
VPC requirements
VPC stores the entire configuration as simple file system
files. Therefore, each file tends to be huge in size (multiple GBs). The exact
size will depend upon the OS and the additional applications loaded. Therefore,
you need substantial amount of hard disk space. Nowadays, 80 GB HDDs are available
below Rs 5000. So it is not a problem at all.
In order to manage multiple instances of operating systems and applications
efficiently, the RAM requirements are also high. Each VPC can be configured
to use a limited amount of RAM. Still, it is a good idea to have a substantial
amount of RAM for effectively using VPC.
As VPC emulates the entire hardware setup for an instance, a fast processor
is also a must. Base Hardware prerequisites are given below.
- An x86-based computer with a 400 MHz or faster (1 GHz
recommended) processor with L2 cache. Virtual PC supports the use of AMD Athlon/Duron,
Intel Celeron, Intel Pentium II, Intel Pentium III, and Intel Pentium 4 processors.
Virtual PC also can use AMD Opteron processors, but only with 32-bit host
operating systems. You can run Virtual PC on a multi-processor computer, but
it utilizes one processor only.
- CD-ROM or DVD drive
- Super VGA (800 × 600) or higher resolution
monitor recommended
- Keyboard and Microsoft mouse or compatible pointing
device
- 512 MB or more RAM (practically)
- Software:
Although VPC supports many Operating systems right from DOS, the VPC software
itself requires Windows XP or Windows 2000 and above.
Here is an indicative chart of memory and disk space requirements for various
OS versions hosted under VPC. Please note that these requirements will increase
as you load more application software on top of the VPC OS.
| Windows XP Professional |
128 MB |
2 GB |
| Windows XP Home Edition |
128 MB |
2 GB |
| Windows 2000 Professional |
96 MB |
2 GB |
| Windows NT Workstation 4.0, Service Pack 6 or higher |
64 MB |
1 GB |
| Windows Millennium Edition |
96 MB |
2 GB |
| Windows 98 |
64 MB |
500 MB |
| Windows 95a |
32 MB |
500 MB |
| MS-DOS 6.22 |
32 MB |
50 MB |
Using VPC
This section assumes that you have loaded the base VPC software.

The entire lifecycle of creating and managing VPC images is handled from the
console.
When you click New
a wizard starts. In this wizard
you need to choose the guest operating system. There is an option called Other
which provides the facility to load any other x86 OS. You need to have the CDs
for the guest operating system to continue with further installation. 
In the next step, you can decide how much base RAM will be available to the
virtual machine. You can increase the default value, if you have enough RAM
on the host machine.
After completing all the wizard steps a new VPC will be created. The file name
is .VHD.
Now you can choose this instance and click on Start button. As we have just
created this base instance, it is like an unformatted machine with no OS on
it.
When you start a fresh VPC instance, it boots as though a normal bare PC boots!
Now you need the Operating System CD. You need to proceed
and setup the OS as though you were loading it on a new PC. Once you have finished
loading the software, you can save the VPC and reuse it later. 
Depending upon your requirements you can also load additional software and configuration
settings.
Special keys
As VPC behaves like a PC within a PC, you may get confused with keyboard and
mouse handling. In particular, the system keystrokes work within the VPC. For
example, if you press Alt+Tab, it will shuffle applications within the VPC.
Further, once the mouse point enters the VPC screen, it gets bounded by the
VPC window. This is called Mouse Capture.
To move mouse context from a VPC to host PC, you need to use the so called Host
Key. This key is the Right-Alter key by default. However, it can be configured
by you. Pressing and releasing the host key alone, immediately nullifies the
mouse capture and gives mouse control back to the host operating system.
In addition, you can press the Host Key along with other keys to perform many
other useful tasks.
| To press Ctrl + Alt + Delete inside the VPC |
Host Key+ Del |
| To make the VPC instance full screen |
Host Key + Enter |
| To pause and resume the VPC. Pausing a VPC releases
the memory used by VPC quickly so that other applications can use it, without
shutting down the VPC. |
Host Key + P |
| To minimize the VPC |
Host Key + DownArrow |
More usage
This was just the beginning of VPC usage. Next week we will explore more in-depth
usage of
VPC.
 |
About
the Author:Dr Nitin Paranjape is the Chairman and MD of Maestros (Mediline).
He is a consultant with many organisations, covering appropriate technology
utilisation, business application of relevant technology, application architecture
and audit as well as knowledge transfer. He has authored more than 650 articles
on various technology-related subjects. He can be contacted at nitin@mediline.co.in |
|