Patent ID: 8028040
Filing Date: 2011-09-27
Classification: G06F

Abstract:
1. A method of communicating between a plurality of virtual machines on a host computer and a plurality of remotely located devices connected to a plurality of remote computers, the method comprising: establishing, by a connection manager, communications between a host bridging module, of the host computer, comprised of hardware circuits, and a first one of the plurality of remote computers, the first one of the plurality of remote computers comprising a Universal Serial Bus (USB) device interface and a High Definition (HD) audio interface; associating, by the connection manager, the first one of the plurality of remote computers with a first one of the plurality of virtual machines, the plurality of virtual machines hosted on a Central Processor Unit (CPU) sub-system that is physically separate from the host bridging module; presenting, by the host bridging module, via a physical Peripheral Component Interconnect (PCI)-Express connection, to the first one of the plurality of virtual machines, in forms recognizable by native bus drivers of an operating system of the first one of the plurality of virtual machines as forms in which hardware interface functions are presented by local interface controller hardware that controls local device interfaces, a USB bus controller interface in operative control, via the communications, with the USB device interface and an HD audio bus controller interface in operative control, via the communications, with the HD audio device interface; executing, by the first one of the plurality of virtual machines, a command in response to an event presented by the USB bus controller interface function, the event associated with the USB device interface, the executing the command generating data; sending, via the HD audio bus controller interface and the communications, the data to the first one of the plurality of remote computers, the data usable by the HD audio device interface; and determining that a second one of the plurality of remote computers requires a set of interface functions and repeating the establishing, the associating, the presenting, the executing, and the sending between a second one of the plurality of virtual machines and the second one of the plurality of remote computers.