摘要:
A method of improving USB device virtualization is proposed that allows giving virtual machines (VMs) direct access to USB devices with a combination hardware and software solutions. The USB host controller replaces device identifiers assigned by the VM with real device identifiers that are unique in the system. The real device identifiers are assigned by the virtual machine monitor (VMM) or the host controller.
摘要:
A method, apparatus and system are described for seamlessly sharing I/O devices amongst multiple virtual machines (“VMs”) on a host computer. Specifically, according to one embodiment of the invention, the virtual machine manager (“VMM”) on the host cycles access to the I/O devices amongst the VMs according to a round robin or other such allocation scheme. In order to provide direct access to the devices, the VMM may save the device state pertaining to the currently active VM, store the state in a memory region allocated to the currently active VM, retrieve a device state for a new VM from its memory region and restore the device using the retrieved device state, thus providing the illusion that each VM has direct, full-speed, exclusive access to the I/O device.
摘要:
According to one embodiment, USB device virtualization can be improved by giving virtual machines (VMs) direct access to USB devices with a combined hardware and software solution. One aspect is directed to including providing a set of PCI configuration registers and operational registers for each VM, providing an interrupt request line for each VM, and using a new schedule traversal algorithm for multiple schedules, including a fairness algorithm that prevents starvation of any VM's bulk traffic.
摘要:
A method of improving USB device virtualization to prevent bus bandwidth from being over allocated when isochronous USB devices are attached to multiple virtual machines by attaching a dummy device to each virtual machine which will mimic the bandwidth reservations made by real devices in other virtual machines, thus allowing each virtual machine to determine the true available bandwidth. The dummy devices are represented by incorporating a dummy device driver in each virtual machine and emulating the dummy device in software in the VMM.
摘要:
A discussion for improving USB device virtualization by giving virtual machines (VMs) direct access to USB devices with a combined hardware and software solution, including providing a set of PCI configuration registers and operational registers for each VM, providing an interrupt request line for each VM, and using a new schedule traversal algorithm for multiple schedules, including a fairness algorithm that prevents starvation of any VM's bulk traffic.
摘要:
A method of improving USB device virtualization to prevent bus bandwidth from being over allocated when isochronous USB devices are attached to multiple virtual machines by attaching a dummy device to each virtual machine which will mimic the bandwidth reservations made by real devices in other virtual machines, thus allowing each virtual machine to determine the true available bandwidth. The dummy devices are represented by incorporating a dummy device driver in each virtual machine and emulating the dummy device in software in the VMM.
摘要:
A method of improving USB device virtualization is proposed that allows giving virtual machines (VMs) direct access to USB devices with a combination hardware and software solutions. The USB host controller replaces device identifiers assigned by the VM with real device identifiers that are unique in the system. The real device identifiers are assigned by the VMM or the host controller.
摘要:
A method for performing virtualization, includes managing data between a virtual machine and a bus controller by transmitting an input output (IO) request from the virtual machine to a service virtual machine that owns the bus controller. According to an alternate embodiment, the method for performing virtualization includes managing isochronous data between a virtual machine and a bus controller. Other embodiments are described and claimed.
摘要:
A processing system may include a service operating system (OS) and a guest virtual machine (VM). The service OS may be a host OS or an OS in a service VM, for instance. The guest VM may have a physical address space. In one embodiment, a pseudo-device driver in the service OS causes an address within the physical address space of the guest VM to be mapped to an address within a virtual address space of a user level monitor (ULM) running on top of the service OS. When an operation that involves the physical address space of the guest VM (e.g., a direct memory access (DMA) operation requested by the guest VM, an interrupt triggered by the guest VM, etc.) is detected, the ULM may use its virtual address space to access the physical address space of the guest VM. Other embodiments are described and claimed.
摘要:
A method for managing data between a virtual machine a bus controller includes transmitting an input output (IO) request from the virtual machine to a service virtual machine that owns the bus controller. According to an alternate embodiment, managing data between a virtual machine and a bus controller includes trapping a register access made by the virtual machine. A schedule is generated to be implemented by the bus controller. Status is returned to the virtual machine via a virtual host controller. Other embodiments are described and claimed.