Virtual PC allows virtualization of hardware and operating systems. It works by installing software that creates a virtual machine environment which hosts guest operating systems. The virtual machine environment emulates hardware using a virtual machine monitor that allows direct execution of some guest code for improved performance. Runtime patching of the guest operating system kernel is sometimes needed for virtualization. Virtual PC provides benefits like application migration, operating system testing, and training without needing additional physical computers.