Abstract: A technique for efficient cache management demotes a unit of data from a higher cache level to a lower cache level in a cache hierarchy when the higher level cache evicts the unit of data. In a virtualization computing environment, eviction of the unit of data may be inferred by observing privileged memory and disk operations performed by a guest operating system and trapped by virtualization software for execution. When the unit of data is inferred to be evicted, the unit of data is demoted by transferring the unit of data into the lower cache level. This technique enables exclusive caching without direct involvement or modification of the guest operating system. In alternative embodiments, a pseudo-driver installed within the guest operating system explicitly tracks memory operations and transmits page eviction information to the lower level cache, which is able to cache evicted pages while maintaining cache exclusivity.
Abstract: This disclosure describes a virtual desktop brokering system that brokers a virtual desktop session. During operation, a broker receives a request to establish the session. Next, the broker broadcasts, to a set of agent concentrators, a request to find an available machine for the session, wherein each agent concentrator maintains state information of a respective group of available machines. The broker receives, from at least one agent concentrator, a list of available machines. Subsequently, the broker chooses an available machine from the list for the session, and the broker sends a request to the agent concentrator associated with the chosen machine to initiate the session.
Abstract: Methods are presented for caching I/O data in a solid state drive (SSD) locally attached to a host computer supporting the running of a virtual machine (VM). Portions of the SSD are allocated as cache storage for VMs running on the host computer. A mapping relationship is maintained between unique identifiers for VMs running on the host computer and one or more process identifiers (PIDs) associated with processes running in the host computer that correspond to each of the VM's execution on the host computer. When an I/O request is received, a PID associated with I/O request is determined and a unique identifier for the VM is extracted from the mapping relationship based on the determined PID. A portion of the SSD corresponding to the unique identifier of the VM that is used as a cache for the VM can then be accessed in order to handle the I/O request.
Type:
Application
Filed:
October 23, 2012
Publication date:
April 24, 2014
Applicant:
VMWARE, INC.
Inventors:
Li Zhou, Samdeep Nayak, Sandeep Uttamchandani
Abstract: Systems and methods for detecting system exceptions in guest operating systems are provided. A module is provided for each guest operating system and is capable of intercepting system exceptions within the guest operation system. The module communicates with a hypervisor to provide a current status of the guest operating system. In the event of a system exception, the module may collect system exception information, such as a memory dump.
Abstract: A computer implemented method for processing virtualization of physical computers that are part of a group into virtual computers is provided. The method includes obtaining relationship data from the physical computers, where the relationship data identifies parameters used to communicate within the group. Then, the method analyzes utilization parameters for each of the physical computers of the group. A visual model for proposed virtualization of the group of physical computers is then generated. The visual model identifies hosting machines designated to define a virtual computer for each of the physical computers, where the visual model provides a graphical illustration of the group of physical computers once converted to virtual computers. The method enables adjustment of the proposed virtualization of the group of physical computers.
Abstract: Methods and systems for implementing private allocated networks in a virtual infrastructure are presented. One method operation creates virtual switches in one or more hosts in the virtual infrastructure. Each port in the virtual switches is associated with a private allocated network (PAN) from a group of possible PANs. In one embodiment, one or more PANs share the same physical media for data transmission. The intranet traffic within each PAN is not visible to nodes that are not connected to the each PAN. In another operation, the method defines addressing mode tables for the intranet traffic within each PAN. The entries in the addressing mode tables define addressing functions for routing the intranet traffic between the virtual switches, and different types of addressing functions are supported by the virtual switches.
Type:
Application
Filed:
October 21, 2013
Publication date:
April 24, 2014
Applicant:
VMware, Inc.
Inventors:
Walter Andrew Lambeth, Anupam Dalal, Borislav Deianov, Jun Xiao
Abstract: A method for migrating a virtual machine disk (VM disk) from first physical storage to second physical storage while the virtual machine (VM) is running, the method comprising: (a) taking a snapshot of the VM disk as represented by a first parent VM disk stored on the first physical storage, whereby a first child VM disk is created on one of the first or second physical storage; (b) copying the first parent VM disk to the second physical storage as a second parent VM disk; (c) re-parenting the first VM child disk to the second parent VM disk; and (d) consolidating the first child VM disk and the second parent VM disk.
Type:
Grant
Filed:
July 11, 2012
Date of Patent:
April 22, 2014
Assignee:
VMware, Inc.
Inventors:
Osten Kit Colbert, Gregory Hutchins, Robert Bosch, Jairam Ranganathan, Joel Baxter
Abstract: Systems and methods for providing privacy of file synchronization with sharing functionality are presented. In embodiments, a file synchronization system comprises one or more folders associated with one or more non-shared encryption keys, which may be a managed key shared across an organization, and/or a personal key that is not shared or has limited third-party sharing. The one or more non-shared encryption keys are not known to the data storage service. The file synchronization system may also contain one or more folders associated with a shared encryption key that is shared with the data storage service, and in embodiments, with a set of users of the service. The system may include a mapping correlating folders to encryption type so items in each folder can be handled appropriately. The system may have additional folders, such as one or more public folders that may be available with limited or no restrictions.
Abstract: In a method of managing a test environment, a test of a software item is initiated, wherein the test manages a test environment that the test executes test cases against during run time. At least one global variable file is accessed. The global variable file describes the test environment and defines references to machine names.
Type:
Application
Filed:
October 12, 2012
Publication date:
April 17, 2014
Applicant:
VMware,Inc.
Inventors:
Mark TEMPEL, David GIBBENS, Callistus C. SCHISSEL
Abstract: In a method of testing a software item, an error condition may occur during an automated test of a software item. In response to the error, the test remains in an active state. An alteration to the test is accepted. Once altered, a test may continue using the altered test.
Abstract: High availability of a virtual machine is ensured even when all of the virtual machine's IO paths fail. In such a case, the virtual machine is migrated to a host that is sharing the same storage system as the current host in which the virtual machine is being executed and has at least one functioning IO path to the shared storage system. After execution control of the virtual machine is transferred to the new host, IO operations from the virtual machine are issued over the new IO path.
Type:
Application
Filed:
October 11, 2012
Publication date:
April 17, 2014
Applicant:
VMware, Inc.
Inventors:
Jinto ANTONY, Sudhish Panamthanath Thankappan, Jidhin Malathusseril Thomas
Abstract: A system and method for reducing the likelihood of concurrency errors by identifying vulnerable segments of computer code and stalling other virtual machine threads of execution. According to one embodiment of the present invention, the vulnerable segment is identified at runtime, for example in a dynamic translator. According to another embodiment of the present invention, the vulnerable segment is identified ahead of time, for example in a static translator. According to yet another embodiment of the present invention, the vulnerable segment is identified in the binary translator of a virtual machine monitor.
Type:
Application
Filed:
October 9, 2013
Publication date:
April 17, 2014
Applicant:
VMware, Inc.
Inventors:
Ole AGESEN, Michael COHEN, Jeffrey W. SHELDON
Abstract: In a method of executing a test while creating the test, a portion of a line of a test case for a software item is received. The syntax of the received portion of the line is validated upon entry of the portion of the line. The line is executed after the syntax validation. Any error based on execution is indicated.
Abstract: In a method of testing a software item, a graphical user interface is presented for scheduling a test of the software item. Specified information regarding conduct of a test is received via the graphical user interface. The specified information includes a test time for initiating the test. The test is initiated at the test time.
Type:
Application
Filed:
October 12, 2012
Publication date:
April 17, 2014
Applicant:
VMware,Inc.
Inventors:
Callistus C. Schissel, Andrew Moravec, Sean McDonald, Scott Rens, David Gibbens
Abstract: In a method of binding a software item to a plain English name, a user input of a plain English control name is received into a test file. A user interface under test is automatically searched for a control corresponding to the plain English control name. The corresponding control in the software item under test is automatically bound to the plain English control name.
Type:
Application
Filed:
October 12, 2012
Publication date:
April 17, 2014
Applicant:
VMware,Inc.
Inventors:
Mark TEMPEL, Muktar Hassen, David Gibbens
Abstract: In a method of software development kit (SDK) testing, a graphical user interface is provided for initializing a test of an SDK. An application is created to run against the SDK. The output of the SDK is verified.
Type:
Application
Filed:
October 12, 2012
Publication date:
April 17, 2014
Applicant:
VMware, Inc.
Inventors:
David GIBBENS, Nicholas Krueger, Sean McDonald, Scott Rens, Travis Dow
Abstract: In a method of testing a software item, an automated test of a software item is conducted. In response to occurrence of an error condition during the test, test data associated with the error condition is captured. A portion of the captured test data is forwarded to a designated electronic notification location.
Type:
Application
Filed:
October 12, 2012
Publication date:
April 17, 2014
Applicant:
VMware. Inc.
Inventors:
Callistus C. SCHISSEL, Sean MCDONALD, David GIBBENS
Abstract: In a method of software item testing, an automated test of a software item is initiated in a cloud-based computing environment in exchange for a fee. The test is part of a testing framework in the cloud-based computing environment. In response to occurrence of an error condition during the test, the test is paused within the cloud-based computing environment. An alteration to the test is accepted while the test is paused. The alteration is accepted via a user interface to the cloud-based computing environment. Testing is continued within the cloud-based computing environment, using altered test.
Abstract: In a method of creating a custom action, a user interface is presented for entry of lines of a custom action. In response to receipt of a sub-portion of a line of the custom action via said user interface, the sub-portion is automatically checked for errors in syntax. The custom action is stored as a selectable custom action in a dynamic layer of a testing infrastructure. The dynamic layer of the testing infrastructure is associated with a particular instance of a software item.
Type:
Application
Filed:
October 12, 2012
Publication date:
April 17, 2014
Applicant:
VMware,Inc.
Inventors:
David Gibbens, Mark Tempel, Sean McDonald, Scott Rens
Abstract: In one embodiment, a method allows an application running in a first process to communicate with a second process. A file system filter driver receives a command from the application for a file. The file system filter driver is configured to process file system commands. The file system filter driver determines that the command is for an inter-process communication with a service running in the second process based on the command being for the file. Then, the file system filter driver sends the command to the service running in the second process where the command is processed by the service. A response from the service is received based on the command being processed by the service and the file system filter driver sends the response to the application.