Virtual PC vs. Virtual Server: Comparing Features and Uses

Microsoft® Virtual PC 2004 is a virtual machine solution for desktop operating systems. Microsoft Virtual Server 2005, on the other hand, is a solution for server operating systems. Although Virtual PC and Virtual Server share many features in common, they are designed for different purposes. As a result, some of their features are also quite different. This white paper explains the differences between Virtual PC and Virtual Server, and discusses the scenarios in which it is appropriate to use one or the other.

Virtual PC is designed to provide an optimal experience for a desktop user who wants to run one or more additional desktop operating systems on a single computer. The user interface is fairly simple, and there is extensive integration between the host operating system running on the physical computer and the guest operating systems running in virtual machines. For example, users can easily drag and drop data between virtual machines and their host. In addition, the sound and display features of virtual machines are much the same as those of physical computers.

Virtual Server is different from Virtual PC in that, instead of being designed for simplicity of use for the desktop user, it provides features that support the more complex requirements of enterprise server applications and administration. Virtual Server includes additional features that support greater manageability, scalability, and extensibility. These are important aspects of server management that are not appropriate to the intended uses of Virtual PC.

Fundamental Differences Between Virtual PC and Virtual Server

The most fundamental difference between Virtual PC and Virtual Server is that Virtual PC is designed for desktop (also known as "client" or "PC") operating systems, and Virtual Server is designed for server operating systems.

The two products have many features in common, but because they are designed to serve different purposes, there are crucial differences between them. For example, because it supports desktop applications, the Virtual PC user interface is designed with the typical desktop user in mind. The configuration options are relatively simple and easy for the average computer user to understand and use. Virtual Server, on the other hand, is designed for running enterprise server operating systems and applications. It provides the configuration and management options that are required for server management. These necessarily make the user interface more complex. As a result, making effective use of Virtual Server requires some knowledge of server technologies.

Usage Scenarios for Virtual PC

As already mentioned, Virtual PC is designed for running desktop operating systems and applications. Some primary scenarios for using Virtual PC include the following:

  • Support for running legacy desktop applications. For example, you might have applications that were designed to run on Microsoft Windows® 98 that will not run on your new computer that is running a Microsoft Windows XP operating system. With Virtual PC, you can run Windows 98 and your applications in a virtual machine on your new computer.
  • Help desk. If you are a help desk technician, you can use Virtual PC to set up a variety of desktop environments inside virtual machines. You can then duplicate the desktop environments of your clients and reproduce and troubleshoot the problems clients present to you.
  • Desktop application testing. If you are a developer, you can use Virtual PC to set up virtual machines so you can test desktop applications in a variety of operating system environments.
  • Training. If you are a trainer, you can use Virtual PC to set up your training programs to run inside virtual machines. This way, you can offer a variety of different classes without needing to use a separate computer for each one. In addition, you can set up the virtual machines to discard changes that were made during a class. This can dramatically reduce your class set-up time.

These scenarios are described in detail in the Microsoft Virtual PC 2004 Technical Overview white paper, available at the Microsoft Web site at https://go.microsoft.com/fwlink/?LinkId=45404.

In addition to these scenarios, there are a number of other ways you might want to use Virtual PC, depending on your situation and computing needs. For example, you might use Virtual PC at home so your family can use it to browse the Internet. This can eliminate worries about applications or files your family might download—those downloaded materials will not affect the host operating system. If the virtual machine becomes corrupted or infected with a virus, you can simply delete the virtual machine and start over.

Usage Scenarios for Virtual Server

Virtual Server is designed for running enterprise server operating systems and applications. Some primary scenarios for using Virtual Server include the following:

  • Test and development for server applications. You can use Virtual Server in situations that require rapid and frequent server reconfiguration. For example, you can use it for development and testing, product demonstrations, or training. You can create a library of virtual machines in different server configurations without needing to dedicate a physical computer to each configuration. You can then easily deploy your virtual machines from this library with a few mouse clicks. You can also set up the virtual machines to use undo disks so that changes can be discarded, or you can use differencing disks to create a variety of configurations from one base disk. This is useful in situations where you must test software or certain software configurations before you actually deploy them. You might use this approach to test the effect of a software update before deploying it to your organization. In addition, you can quickly create virtual networks that simulate physical networks. You can then test real-world scenarios in your virtual network.
  • Server consolidation. Many companies have departmental and branch office servers that are underutilized. This is often because different departmental or branch office applications were written for different operating systems or different versions of the same operating system. To reduce the number of physical servers you must maintain, you can migrate these applications and operating systems into virtual machines running under Virtual Server on a single physical server.
  • Application migration. Many companies have server applications that require an older operating system, such as Microsoft Windows NT® Server 4.0. To upgrade to a newer, more resilient system would require rewriting the applications. But this can be very costly. A more manageable and cost-effective approach would be to move older operating systems and server applications into virtual machines running under Virtual Server and a Microsoft Windows Server™ 2003 operating system.

Shared Features

Virtual PC and Virtual Server share a number of features in common. These include the following:

  • Basic file architecture. Both Virtual PC and Virtual Server use the same file types for configuration and resource files. For example, virtual machine configuration files are .vmc files, virtual hard disk files are .vhd files, and saved state files are .vsv files. This common file architecture allows virtual machines (within certain limitations) to be shared between Virtual PC and Virtual Server.
  • Networking. Both Virtual PC and Virtual Server allow networking between virtual machines and physical machines. With Virtual Server, however, you can also create and configure virtual networks.
  • Virtual machine control options. Options for controlling virtual machines, such as starting, stopping, shutting down, and saving state are the same for Virtual PC and Virtual Server.
  • Disk features. Undo and differencing disks are available in both Virtual PC and Virtual Server.

Feature Differences

This section explains some of differences between the features in Virtual PC and those in Virtual Server.

Unique features of Virtual PC

To meet the requirements of desktop users, Virtual PC provides some features that are not available in Virtual Server. This section describes those features as well as the operating systems that Virtual PC supports.

Supported operating systems

For Virtual PC, both the host operating system (the one on which you install Virtual PC) and the guest operating systems (the ones running inside virtual machines) must be desktop operating systems.

Supported host operating systems include:

  • Windows XP Professional
  • Windows 2000 Professional
  • Windows XP Tablet PC Edition

Supported guest operating systems include those just listed and the following:

  • Windows XP Home Edition
  • Windows NT Workstation 4.0, Service Pack 6 (SP6) or higher
  • Windows Millennium Edition
  • Windows 98
  • MS-DOS® 6.22
  • OS/2 Warp 4, OS/2 Fixpack 15, OS/2 Warp Convenience Pack 1, and OS/2 Warp Convenience Pack 2

Emulated sound card

Both Virtual PC and Virtual Server provide integration with the physical computer's mouse and keyboard. However, only Virtual PC provides an emulated sound card to support the needs and expectations of desktop users.

Extensive host-guest integration

Virtual PC is designed to provide user convenience in a desktop environment. This results in the following benefits to users:

  • They can switch between operating systems as easily as they switch between applications by simply clicking on the window that contains the virtual machine.
  • With a simple drag-and-drop operation, users can move or copy and paste items from a guest operating system to the host operating system, and vice versa.
  • Users can dynamically resize the guest operating system desktop when resizing the virtual machine window.
  • Users can share folders between operating systems.

Shared networking

Virtual PC offers shared networking through network address translation (NAT). This makes it easy for users to configure a connection to an external network that is shared with the host computer.

Unique features of Virtual Server

To support the requirements of an enterprise environment, Virtual Server provides features that are not available (or needed) in Virtual PC. This section describes those features as well as the operating systems that Virtual Server supports.

Supported operating systems

For Virtual Server, supported host and guest operating systems are all server operating systems, except for Windows XP Professional, which is supported as a host operating system.

The following are the supported host operating systems:

  • Windows Server 2003 (Standard, Enterprise, and Datacenter Editions)
  • Windows Small Business Server (Standard and Premium Editions)
  • Windows XP Professional

Note

You should use Windows XP Professional as a host operating system only in a non-production environment.

Supported guest operating systems include those just listed, plus the following:

  • Windows 2000 Server, all editions except Enterprise
  • Windows NT Server 4.0 Enterprise Edition SP6a

See the Virtual Server documentation for more information.

Note

The beta version of Virtual Server 2005 Service Pack 1 (SP1) includes support for x64-based versions of Windows XP Professional and Windows Server 2003 Service Pack 1 (SP1).

Administration

  • Remote management. You can administer Virtual Server remotely by using the Web-based Administration Web site. You can also access and administer virtual machines remotely by using Virtual Machine Remote Control (VMRC).
  • Scripted management. You can manage Virtual Server and its virtual machines by using the Component Object Model (COM) application programming interface (API). For more information, see the Virtual Server Programmer’s Guide included with the product.
  • WMI integration. Virtual Server provides Windows Management Instrumentation (WMI) counters to the host operating system. These counters can be integrated into a non-Microsoft management solution, or they can be passed to Microsoft Operations Manager (MOM) for monitoring and alerting.
  • Compatibility with Windows Server System management products. You can use Windows Server System products such as Automated Deployment Services (ADS), Systems Management Server 2003 Service Pack 1 (SP1), and Microsoft Operations Manager (MOM) 2005 to deploy and manage virtual machines. A MOM management pack is available for Virtual Server 2005.
  • Delegated administration. With Virtual Server, you can delegate administration and provide secure, authenticated guest access.
  • System event logging. Virtual Server logs events on the host operating system event log. Logged events can be integrated into a non-Microsoft management solution, or passed to MOM for alerting. Virtual Server can also send event notices—such as when a virtual machine session stops functioning—to external scripts.

Scalability

  • SCSI support. Virtual Server supports virtual SCSI drives up to 2 terabytes in size.
  • Host multiprocessor support. Virtual Server scales across multiple processors on the host computer—up to 32. Each running virtual machine can take advantage of up to one CPU. For example, on a 32-processor host computer, you could allocate your CPU capacity so that 31 simultaneously running virtual machines would each use up to one CPU, leaving a CPU free for the host operating system.
  • Multithreading. Virtual Server 2005 is a multithreaded application that runs as a system service, with each virtual machine running in its own thread of execution. In contrast, Virtual PC is a single-threaded application in which all simultaneously running virtual machines run on the same processor.
  • Large RAM support. Virtual Server supports up to 3.6 gigabytes (GB) of RAM per virtual machine.

Security

  • Support for Secure Sockets Layer (SSL) security. For access to the Administration Web site and the Virtual Machine Remote Control (VMRC) client, Virtual Server supports SSL security, as well as NTLM and Kerberos V5 authentication.
  • Configurable user context for virtual machines. By default, a virtual machine runs under the account of the user who turned it on. For added security, you can configure each virtual machine to run under a specified user account. Virtual machine scripts can also run under this account. The account must be configured before virtual machine scripts can run, however.

Resource management

  • Flexible memory and CPU allocation. Virtual Server supports flexible memory configuration and dynamic CPU resource allocation for each virtual machine.

Other enterprise features

  • Virtual networking. With Virtual Server, you can create an unlimited number of virtual networks, each with its own virtual Dynamic Host Configuration Protocol (DHCP) server. You can also configure Domain Name System (DNS) and Windows Internet Name Service (WINS) servers, Internet Protocol (IP) addresses, and IP address lease time.
  • Two-node clustering. Virtual Server provides simple two-node failover from one virtual machine to another. You can use this feature for testing and development only; it is not supported for use in a production environment.

Note

The beta version of Virtual Server 2005 SP1 supports creating a Microsoft Cluster Service cluster that uses shared storage on iSCSI and includes from two to eight virtual machines.

Conclusion

Although Virtual PC and Virtual Server share a number of features in common, they are designed and used differently. With a simplified user interface and extensive desktop integration, Virtual PC is designed to meet the needs of the typical desktop application user. With its extensive management, extensibility, and scalability features, Virtual Server is designed to provide the necessary tools and capabilities for running enterprise-class servers.

Additional Information

This section provides links to additional information about Virtual PC and Virtual Server.

Author Information

Megan Davis is a technical writer on the Microsoft Windows Server User Assistance team. She specializes in virtual machine technology, and maintains "The Soul of a Virtual Machine," a TechNet blog about Virtual Server.