Patents Assigned to VMware
-
Patent number: 8577853Abstract: A shared file system for a group of host computer systems is upgraded in-place in a manner that the shared file system can remain online and accessible to the host computer systems. Each host computer system first loads a new file system driver that is backward compatible with a driver that is currently used by them to interact with the file system. Second, one of the host computer systems acquires locks to file system management data structures of the file system, upgrades the file system management data structures, and upon completion thereof, notifies the other host computer system that the upgrade to the file system management data structures is complete.Type: GrantFiled: August 17, 2011Date of Patent: November 5, 2013Assignee: VMware, Inc.Inventors: Jinyuan Li, Murali Vilayannur, Mayank Rawat, Satyam B. Vaghani
-
Patent number: 8578380Abstract: A condition variable for controlling access to a critical section of computer code by a plurality of concurrently running execution threads comprises a data structure with a head list linking threads in an arrival order and a tail list linking threads in a reverse arrival order. Together, the head and tail lists together indicate which threads are currently blocked on the condition variable. A wait counter indicates how many threads are currently linked in the data structure and a signal counter indicates how many times the condition variable has been signaled for waiting threads that are currently linked in the data structure. The head and tail pointers, as well as the wait and signal counters, may be implemented as fields of a single, atomically updatable data word.Type: GrantFiled: August 27, 2004Date of Patent: November 5, 2013Assignee: VMware, Inc.Inventors: Keith M. Adams, Ole Agesen
-
Patent number: 8578083Abstract: A method of performing disk operations on a physical storage that is being managed by a storage virtual appliance (SVA), from a virtual machine (VM), is disclosed. The method includes intercepting a data read/write request form the VM. The data read/write request is intercepted in the hypervisor prior to the read/write request reaches the SVA. The VM and the SVA are hosted in the hypervisor. The read/write request includes virtual block numbers which are translated into physical block numbers before performing the read/write operation on the physical storage. The method further includes probing a copy of virtual Logical Unit Number (LUN) block numbers to physical disk block numbers mapping table (bock map table) in the hypervisor to identify physical block numbers that corresponds to the virtual block numbers in the read/write request.Type: GrantFiled: October 12, 2009Date of Patent: November 5, 2013Assignee: VMware, Inc.Inventors: Karthik Chandrasekaran, Supratim Deka
-
Patent number: 8577937Abstract: Systems and methods of executing and/or provisioning an application in an application specific runtime environment or general runtime environment are disclosed. The application specific runtime environment or general runtime environment are optionally defined by an application environment specification to include a minimal or reduced set of software resources required for execution of the application. These software resources are optionally stored in a resource repository that includes resources associated with a plurality of operating systems and/or executable applications. Various embodiments of the invention include the development of hierarchical resource metadata configured to characterize the various files, packages and file families included in the resource repository. In some embodiments this metadata is used to select between files when provisioning an application specific runtime environment.Type: GrantFiled: August 13, 2008Date of Patent: November 5, 2013Assignee: VMware, Inc.Inventor: Richard Offer
-
Publication number: 20130290595Abstract: Memory of a database management system (DBMS) that is running in a virtual or physical machine is managed using techniques that that reduce the effect of memory swaps on the performance of the physical or virtual machine. One such technique includes the steps of determining a swap rate while the database application is in an executing state, and decreasing the size of memory space available to the database application if the swap rate is above a threshold.Type: ApplicationFiled: April 30, 2012Publication date: October 31, 2013Applicant: VMware, Inc.Inventors: Boris WEISSMAN, Aleksandr V. Mirgorodskiy, Ganesh Venkitachalam, Feng Tian
-
Publication number: 20130290856Abstract: User interface virtualization describes a technique for providing a user with access to one computing device from another computing device, while translating the ergonomics of one computer's user interface style into the ergonomics of the other's. An agent running on a remote desktop collaborates with a corresponding client running on a client machine that accepts a “touch and swipe” style input. The agent and client exchange user interface metadata and user interface input events and translate the exchanged information to provide native graphical user interface elements (at the client machine) and simulated user actions (at the remote desktop). The agent running on the remote desktop may use an interface interaction API or library to programmatically manipulate the user interface of the remote desktop responsive and act as a proxy for the corresponding client.Type: ApplicationFiled: October 8, 2012Publication date: October 31, 2013Applicant: VMware, Inc.Inventors: Daniel James BEVERIDGE, Charles Andrew HIRSTIUS, Andre LEIBOVICI
-
Publication number: 20130290641Abstract: A mechanism is provided for managing memory of a runtime environment executing on a virtual machine. The mechanism includes an elastic cache made of objects within heap memory of the runtime environment. When the runtime environment and virtual machine are not experiencing memory pressure from a hypervisor, the objects of the elastic cache may be used to temporarily store application-level cache data from applications running within the runtime environment. When memory pressure from the hypervisor is exerted, the objects of the elastic cache are re-purposed to inflate a memory balloon within heap memory of the runtime environment.Type: ApplicationFiled: April 30, 2012Publication date: October 31, 2013Applicant: VMware, Inc.Inventor: Benjamin J. CORRIE
-
Publication number: 20130290857Abstract: User interface virtualization describes a technique for providing a user with access to one computing device from another computing device, while translating the ergonomics of one computer's user interface style into the ergonomics of the other's. An agent running on a remote desktop exchanges metadata and input events with a corresponding client running on a client device that accepts a “touch and swipe” style input. The agent running on the remote desktop may use an interface interaction API or software framework to programmatically manipulate the user interface of the remote desktop and act as a proxy for the corresponding client. The client constructs and displays native graphical user interface elements at the client device that are virtual representations of a corresponding user interface element at the remote desktop, including file dialogs, clipboards, start menus, and task switchers.Type: ApplicationFiled: October 23, 2012Publication date: October 31, 2013Applicant: VMware, Inc.Inventor: Daniel James BEVERIDGE
-
Publication number: 20130290858Abstract: User interface virtualization describes a technique for providing a user with access to one computing device from another computing device, while translating the ergonomics of one computer's user interface style into the ergonomics of the other's. An agent running on the remote desktop may use an interface interaction API or software framework to programmatically manipulate the user interface of the remote desktop and act as a proxy for a corresponding client running on a client device that accepts a “touch and swipe” style input. A user interface virtualization profile is used to specify application-specific augmentations and application-specific support for the interface interaction API.Type: ApplicationFiled: February 27, 2013Publication date: October 31, 2013Applicant: VMware, Inc.Inventor: Daniel James BEVERIDGE
-
Publication number: 20130290596Abstract: A mechanism is provided for managing memory of a runtime environment executing on a virtual machine. A balloon agent that is part of a runtime environment is configured to coordinate inflations of a memory balloon within a heap of” the runtime environment and an out-of-heap overflow balloon, particularly in situations where a hypervisor needs to reclaim more memory from the runtime environment than the runtime environment is able to give up. The balloon agent may slowly free out-of-heap balloon memory, which may cause an increase of a target size for the balloon agent, which in turn inflates the memory balloon inside the heap of the runtime environment.Type: ApplicationFiled: April 30, 2012Publication date: October 31, 2013Applicant: VMware, Inc.Inventor: Benjamin J. CORRIE
-
Patent number: 8572706Abstract: A policy engine is situated between the communications path of a cloud computing environment and a user of the cloud computing environment to comply with an organization's policies for deploying web applications in the cloud computing environment. The policy engine intercepts communications packets to the cloud computing environment from a user, such as a web application developer, for example, in preparation for deploying a web application in the cloud computing environment. The policy engine identifies commands corresponding to the communications packets and directs the communications packets to appropriate rules engines corresponding to such commands in order to execute rules to comply with an organization's policies. Upon completion of execution of the rules, the communications packets are forwarded to the cloud computing environment if they comply with the policies.Type: GrantFiled: April 26, 2011Date of Patent: October 29, 2013Assignee: VMware, Inc.Inventors: Mark Lucovsky, Derek Collison, Vadim Spivak, Gerald C. Chen, Ramnivas Laddad
-
Patent number: 8572606Abstract: 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: GrantFiled: March 1, 2006Date of Patent: October 29, 2013Assignee: VMware, Inc.Inventors: Ole Agesen, Michael Cohen, Jeffrey W. Sheldon
-
Patent number: 8572608Abstract: 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.Type: GrantFiled: October 22, 2008Date of Patent: October 29, 2013Assignee: VMware, Inc.Inventor: Abhinav Katiyar
-
Patent number: 8566502Abstract: In a computer system with a disk array that has physical storage devices arranged as logical storage units and is capable of carrying out hardware storage operations on a per logical storage unit basis, a switch is provided to offload storage operations from a file system to storage hardware. The switch translates primitives used for performing storage operations into commands executable by the physical storage devices so that the data moving portion of the storage operations can be offloaded from the file system to the storage devices.Type: GrantFiled: May 29, 2008Date of Patent: October 22, 2013Assignee: VMware, Inc.Inventor: Satyam B. Vaghani
-
Patent number: 8566744Abstract: An method for use in a computer system for determining correspondence between at least two renditions of a single computer program includes enabling the identification of a selected screenshot related to navigation within the computer program and, as a response to the identification, accessing a reference screenshot captured during navigation within a first rendition and a corresponding screenshot captured during navigation within a second rendition. The reference screenshot and the corresponding screenshot are presented on a display, thereby enabling a same-display comparison of content of the reference and corresponding screenshots.Type: GrantFiled: August 12, 2010Date of Patent: October 22, 2013Assignee: VMware, Inc.Inventor: John Green
-
Patent number: 8560626Abstract: Selecting a master node in a group of computing nodes. Computing nodes exchange suitability messages, candidate messages, and master messages to indicate the state of each node. A deterministic algorithm based on scores and timings is executed by each computing node to encourage each node to select the same master node.Type: GrantFiled: January 13, 2011Date of Patent: October 15, 2013Assignee: VMware, Inc.Inventor: Michael Nelson
-
Patent number: 8560791Abstract: Techniques for migrating persistent data between and across data stores are implemented using monitoring methods. The method includes classifying frequently updated blocks of persistent data to distinguish those blocks from less frequently updated blocks of persistent data. The less frequently updated blocks are copied from the source data store to the destination data store, such that persistent data is copied to the destination data store in the absence of the persistent data of the frequently updated blocks. The method further includes identifying a modified set of the less frequently updated blocks that are modified during the copying. The modified set of less frequently updated blocks is copied from the source data store to the destination data store, without copying the frequently updated blocks. It is then determined whether to copy the frequently updated blocks of persistent data from the source data store to the destination data store.Type: GrantFiled: February 26, 2013Date of Patent: October 15, 2013Assignee: VMware, Inc.Inventors: Ali Mashitizadeh, Min Cai, Emre Celebi
-
Patent number: 8561061Abstract: Autonomous selection between multiple virtualization techniques implemented in a virtualization layer of a virtualized computer system. The virtual machine monitor implements multiple virtualization support processors that each provide for the comprehensive handling of potential virtualization exceptions. A virtual machine monitor resident virtualization selection control is operable to select between use of first and second virtualization support processors dependent on identifying a predetermined pattern of temporally local privilege dependent instructions within a portion of an instruction stream as encountered in the execution of a guest operating system.Type: GrantFiled: May 14, 2008Date of Patent: October 15, 2013Assignee: VMware, Inc.Inventors: Keith M. Adams, Jeffrey W. Sheldon, Vyacheslav V. Malyugin
-
Patent number: 8560747Abstract: A method, system and program code for implementing distributed locks to be maintained through the use of on disk heartbeats. An instance of a node need only maintain a single heartbeat for all locks associated with the node and all of its processes. The node updates its heartbeat by accessing common storage, either virtual or physical, and updating a timestamp value in its heartbeat within a predetermined time interval, otherwise the heartbeat becomes stale. Expired heartbeats can be cleared or broken to allow redistribution of any locks associated therewith. The inventive technique may be implemented in a traditional computer environment or in a fully or partially virtualized environment and requires no use of an IP network or a separate network based lock manager.Type: GrantFiled: February 16, 2007Date of Patent: October 15, 2013Assignee: VMware, Inc.Inventors: Yuen-Lin Tan, Satyam Vaghani, Dragan Stancevic, Abhishek Rai, Daniel J. Scales
-
Patent number: 8560577Abstract: Two shared data structures are maintained in a storage unit for coordinating statistic collection among multiple hosts that share the storage unit. The first data structure stores information about the number of hosts that possess slots within the second data structure and identifying information about the slots. The second data structure maintains statistics of each of the multiple hosts. By using this first data structure, hosts can be added to and deleted from the second data structure in an organized manner.Type: GrantFiled: July 12, 2010Date of Patent: October 15, 2013Assignee: VMware, Inc.Inventors: Irfan Ahmad, Ajay Gulati