Microsoft Virtual PC

From OSDev.wiki
Revision as of 23:41, 17 December 2011 by osdev>Clearer
Jump to navigation Jump to search
Emulators
PC Emulators
PC Virtual Machine Monitors
PowerPC Emulators

Microsoft Virtual PC is Microsoft's release of a product line they acquired from Connectix in February 2003. It natively provides support for Windows operating systems, but, using the 'Other' option, it is possible to install and run pretty much any Operating System. (Tested with Linux and several hobbyist OSes.)

It has a very similar feel to the VMWare PC emulator, and provides most of the same functions, and is free. A free downloadable version of VPC is available from Microsoft's website.

Summary: It is okay, but doesn't have an integrated debugger. Pretty fast though :)

Pros/cons:

  • PRO: It provides PCI configuration method 1 support and SMBIOS (Bochs seemingly does not)
  • PRO: Fixed size disk images are very easy to work with and can be shared by Virtual PC and Bochs :)
  • PRO: Supports "dynamically expanding" disk images that start at a miniature size and expand when data is added.
  • PRO: If you integrate a simple debugger and serial I/O into your OS, you can debug it over a named pipe. Just enter \\.\pipe\yourpipename into the configuration page for COM1 or COM2, and connect your debugger (on the host PC) to the same pipe.
  • CON: 15- and 24-bit graphics modes aren't supported in the emulated S3 Trio (but they are in the real one), they screw up the display. It looks like some kind of 1980's computer with a defective CRT. Oddly enough, 32-bit color _is_ supported. See this post on Virtual PC Guy's MSDN blog.
  • CON: It only supports a minimal set of hardware - just enough for decent use. It doesn't support VBE 3.0 (the one with protected-mode access), BIOS32 for PCI (although that is easily implemented without the BIOS), or loopback mode for the serial UARTs.
  • CON: Apparently doesn't support 64-bit hardware. Tested on a machine with a Core 2 Duo (64-bit) and it triple-faulted..
  • CON: No APM support and minimal ACPI support
  • CON: Windows only; can't run it on non-windows operating systems