Patent ID: 7613847

Claim:
A computer system comprising: a physical computer; a virtual machine monitor executable on the physical computer and configured to create an emulation of at least one guest operating system adapted to control the physical computer, the virtual machine monitor comprising: a Peripheral Communication Interconnect (PCI) configuration emulator that calls a function registered by a corresponding device emulator to manage configuration space accesses or forwards a configuration space access to a PCI configuration driver for unregistered or selectively non-emulated functions; a direct input/output (I/O) emulator that manages direct I/O functionality in the virtual machine monitor; and an input/output discovery emulator that determines whether an I/O device exists at an address corresponding to a guest access at a physical address that does not correspond to memory by sending a message to a virtual I/O map driver in the host; and a host executable on the physical computer that manages physical resources coupled to the physical computer on behalf of the virtual machine monitor and the at least one guest operating system, the host adapted to virtualize a Peripheral Component Interconnect (PCI) configuration address space whereby the at least one guest operating system controls PCI input/output (I/O) devices directly and in absence of I/O emulation for memory-mapped I/O registers and I/O port registers, and emulates accesses to configuration space.