Patent ID: 9122594
Filing Date: 2015-09-01
Classification: G06F

Abstract:
1. A method executed in a virtualized computer system in which a guest operating system runs on a virtual machine of a virtualized computer system that includes a processor, a memory, and a hardware device, the method comprising: obtaining information corresponding to the hardware device, the hardware device connected to the virtualized computer system via a communication interface; creating, within virtualization software, a passthrough device corresponding to the hardware device, the passthrough device enabling the guest operating system to have access to the hardware device in either a trap mode or a non-trap mode, the passthrough device having one or more guest physical addresses in a Base Address Register for input/output (I/O) operations to the hardware device, the hardware device defining a machine address in the memory for the I/O operations; identifying the guest physical address; upon determining that the guest physical addresses is contained within the BAR of the passthrough device, mapping the guest physical address to the machine address, thus allowing the guest operating system to have direct access to the hardware device using the mapped machine address; sending, by the guest operation system, an I/O request with the machine address; and enabling an I/O operation to the hardware to be performed in either trap mode or non-trap mode using the mapped machine address.