摘要:
Systems and methods for determining alternative navigational routes. An example method may comprise: determining a first route to a destination, the route comprising a plurality of edges of a graph representing a map of navigable paths, wherein each edge represents a path connecting two vertices and each vertex represents at least one of: an endpoint of a path or a junction of two or more paths; and determining a second route to the destination from a point located at least a defined distance from a junction comprised by the first route, along an edge not comprised by the first route.
摘要:
Systems and methods are disclosed for switching between an assigned device and an emulated device. An example system includes a device-specific driver and a pass-through device driver included in a hypervisor. A common host backend is bound to at most one of the device-specific driver and pass-through device driver at a time. The assigned and emulated devices access the common host backend. The system also includes a switch module that sends one or more communications to a guest to cause the guest to switch from using at most one of the assigned device or the emulated device to the other of the at most one of the assigned device or the emulated device.
摘要:
Systems and methods for memory page offloading in multi-processor computer systems. An example method may comprise: detecting, by a computer system, a memory pressure condition on a first node; invalidating a page table entry for a memory page residing on the first node; copying the memory page to a second node; and updating the page table entry for the memory page to reference the second node.
摘要:
A system and method of migration of a VM sharing a memory region with another VM includes identifying, by an identification module, a plurality of VMs running on a source host machine, where the plurality of VMs includes first and second VMs that share a first shared memory region coupled to the source host machine; identifying, by a target module, a host machine as a target for the second VM; allocating, by an allocation module, a second shared memory region coupled to the target host machine for the second VM; stopping, by a migration module, execution of the second VM on the source host machine; and migrating, by the migration module, the second VM to the target host machine.
摘要:
Systems and methods for paravirtualized Internet Protocol over Infiniband (IPoIB) bridging for virtual machines. An example method may comprise associating, by a hypervisor executing on a host computer system, an Infiniband (IB) interface of the host computer system with a paravirtualized IPoIB interface of a virtual machine executing on the host computer system; receiving, via the paravirtualized IPoIB interface, a paravirtualized IPoIB packet originated by the virtual machine, the paravirtualized IPoIB packet comprising an IP packet and a first header including an IPoIB hardware address; translating the paravirtualized IPoIB packet into an IPoIB frame comprising the IP packet and a second header including the IPoIB hardware address; and forwarding the IPoIB frame via the IB interface to one of: an IB switch, an external IB node.
摘要:
A method and system for managing a virtual computing system including an event source configured to send an event to a destination virtual machine (VM) executing a memory monitoring instruction on a designated address range of a host memory. A hypervisor instructs a destination virtual central processing unit (VCPU) associated with the destination VM to execute the memory monitoring instruction to the designated address range of a memory. A physical CPU associated with the designated address range is configured not to perform an exit to the hypervisor in response to execution of the memory monitoring instruction by the destination VCPU. The hypervisor instructs an event source to write data to the designated address range to send an event for performance by the destination VM, wherein the destination VM wakes up and performs the identified event in response to the event source writing to the identified address range.
摘要:
Technology for configuring and executing a shallow virtual machine to enhance memory protection between different portions of user space memory of a particular computing process. An example method involves: receiving, by a processor of a host, a request to create a computing process comprising a first and second executable code, wherein the computing process comprises an instruction to cause the processor to switch between first and second page table structures; loading the first and second executable code into memory of the host, wherein the first page table structure comprises mapping data for the first executable code and for the second executable code and wherein the second executable code comprises driver code of a device; updating the second page table structure to disable execution of the first executable code and to provide the second executable code with access to the device; and restricting the first executable code from accessing the device.
摘要:
A method performed by a physical computing system includes, with a first virtual entity manager of a first host machine, detecting an Address Resolution Protocol (ARP) request from a first virtual entity supported by the first virtual entity manager to a second virtual entity having a first logical address within a fan network. The method further includes, with the first virtual entity manager, translating the first logical address to a second logical address and transmitting the ARP request to a second host machine using a physical address resolved from the second logical address, the second host machine supporting the second virtual entity. The method further includes receiving a response to the ARP request, the response including a virtualized physical address of the second virtual entity. The method further includes with the first virtual entity manager, forwarding a data packet from the first virtual entity to the virtualized physical address.
摘要:
Technology for configuring and executing a shallow virtual machine to enhance memory protection between different portions of user space memory of a particular computing process. An example method involves: receiving, by a processor of a host, a request to create a computing process comprising a first and second executable code, wherein the computing process comprises an instruction to cause the processor to switch between first and second page table structures; loading the first and second executable code into memory of the host, wherein the first page table structure comprises mapping data for the first executable code and for the second executable code and wherein the second executable code comprises driver code of a device; updating the second page table structure to disable execution of the first executable code and to provide the second executable code with access to the device; and restricting the first executable code from accessing the device.
摘要:
A system and method for scheduling of hyper-threaded CPUs using memory monitoring includes a memory with an operating system memory and a physical processor in communication with the memory. The physical processor includes a first hyper-thread and a second hyper-thread. A monitor instruction to monitor for updates to a designated memory location is executed in the first hyper-thread. The system further includes an operating system to execute on the physical processor and a system call configured to record in the operating system memory that the first hyper-thread is in a memory wait state. The system call is further configured to execute a memory wait instruction in the first hyper-thread. A task is executed in the second hyper-thread while the first hyper-thread is in the memory wait state.