Patents Assigned to VMware
  • Patent number: 8799921
    Abstract: One embodiment of the present invention provides a system that facilitates communication between an embedded code in a web page and a stand-alone application. During operation, the system first embeds a code within a web page that is displayed in a browser. Next, the embedded code receives information indicating a communication method provided by a stand-alone application, via a first communication channel. The embedded code subsequently sends the contextual information associated with a user browser session by calling the communication method, via a second communication channel, thereby allowing the stand-alone application to inherit the contextual information from the web browser.
    Type: Grant
    Filed: September 27, 2012
    Date of Patent: August 5, 2014
    Assignee: VMware, Inc.
    Inventor: Blake R. Barrett
  • Patent number: 8798541
    Abstract: A Bluetooth adapter is shared among guest operating systems of different virtual machines running on a common host computer system using a Bluetooth virtualization stack. The Bluetooth virtualization stack is exposed as a Bluetooth adapter to a guest operating system and as a Bluetooth application to a host operating system. The Bluetooth virtualization stack parses individual socket streams associated with an asynchronous connectionless link (ACL) originating from the guest operating system and couples the socket streams to an application interface associated within the host operating system. Plural instances of the guest operating system and corresponding Bluetooth virtualization stack collectively present a set of socket connections to the host operating system. A Bluetooth driver within the host operating system multiplexes the set of socket streams, advantageously sharing the Bluetooth adapter among different instances of the guest operating system.
    Type: Grant
    Filed: April 11, 2011
    Date of Patent: August 5, 2014
    Assignee: VMware, Inc.
    Inventor: Micah Elizabeth Scott
  • Patent number: 8800018
    Abstract: A method for verifying instructions communicated from a user to a relying entity is described. A trusted entity receives a request from the relying entity to verify instructions received from the user wherein the request includes verification information corresponding to the instructions communicated to the relying entity from the user. The trusted entity sends a request to the user to provide verification information corresponding to the instructions. The trusted entity receives the verification information from the user and compares it to the verification information received from the relying entity. The trusted entity then verifies the instructions based on the comparing.
    Type: Grant
    Filed: November 19, 2012
    Date of Patent: August 5, 2014
    Assignee: VMware, Inc.
    Inventors: Ravinderpal Sandhu, Ravi Ganesan
  • Patent number: 8799418
    Abstract: Computer implemented methods, system and apparatus for configuring a cluster using a plurality of hosts include identifying a plurality of features for forming the cluster. The plurality of features define requirements needed in a host for forming the cluster. A plurality of hosts are identified to be part of the cluster. A compatibility analysis is executed for each of the identified hosts. A plurality of suggested adjustments to particular hosts are presented to enable the particular hosts to be compatible with the features requirements. A configuration template is constructed for the hosts in the cluster that are compatible with the requirements. The hosts are configured for the cluster using the configuration settings in the configuration template. The configured hosts enable the features in the cluster.
    Type: Grant
    Filed: January 13, 2010
    Date of Patent: August 5, 2014
    Assignee: VMware, Inc.
    Inventor: Eric Rider
  • Publication number: 20140215267
    Abstract: Embodiments perform automatic selection of hosts and/or datastores for deployment of a plurality of virtual machines (VMs) while monitoring and recovering from errors during deployment. Resource constraints associated with the VMs are compared against resources or characteristics of available hosts and datastores. A VM placement engine selects an optimal set of hosts/datastores and initiates VM creation automatically or in response to administrator authorization. During deployment, available resources are monitored enabling dynamic improvement of the set of recommended hosts/datastores and automatic recovery from errors occurring during deployment.
    Type: Application
    Filed: March 28, 2014
    Publication date: July 31, 2014
    Applicant: VMware, Inc.
    Inventors: Gururaja Hegdal, Kiran Kasala, M.S. Marichetty
  • Publication number: 20140215173
    Abstract: A designated storage system receives a request to store data in the local storage as a backup copy. The designated storage system requests a file system in the computer system to store the backup copy as a file in the local storage and maintains a record describing storage locations for each of the one or more sets of contiguous available file system data blocks. The storage system may transmit the record to a management computer configured to track which of the computer systems has stored the backup copy. The storage system then requests the file system to delete the file, whereupon the file system removes the file descriptor and frees the one or more file system data blocks in order to satisfy the deletion request but does not delete the data stored in the one or more file system data blocks.
    Type: Application
    Filed: January 31, 2013
    Publication date: July 31, 2014
    Applicant: VMWARE, INC.
    Inventor: Jonathan CLARK
  • Publication number: 20140215044
    Abstract: In one embodiment, a latency value is determined for an input/output IO request in a host computer of a plurality of host computers based on an amount of time the IO request spent in the host computer's issue queue. The issue queue of the host computer is used to transmit IO requests to a storage system shared by the plurality of host computers. The method determines a host specific value assigned to the host computer based in proportion on a number of shares assigned to the host in a quality of service policy for IO requests. The size for the host computer's issue queue is determined based on the latency value and the host specific value to control a number of IO requests that are added to the host computer's issue queue where other hosts in the plurality of hosts independently determine respective sizes for respective issue queues.
    Type: Application
    Filed: March 27, 2014
    Publication date: July 31, 2014
    Applicant: VMware, Inc.
    Inventors: Ajay Gulati, Irfan Ahmad
  • Publication number: 20140215226
    Abstract: Techniques are disclosed for monitoring a software agent running in a virtual machine to prevent execution of the software agent from being tampered with. In one embodiment, the software agent bootstraps such monitoring by ensuring that its code is present in memory and providing the code, memory addresses associated with the code, and a cryptographic signature of the code, to a monitoring process upon request. In response to receiving the code, the monitoring process checks the code using the cryptographic signatures and further ensures that the code is present in memory at the provided address. The monitoring process may then placing write traces on all memory pages of the agent and execution trace(s) on certain pages of the agent.
    Type: Application
    Filed: January 30, 2013
    Publication date: July 31, 2014
    Applicant: VMWARE, INC.
    Inventors: Lionel LITTY, Marios LEVENTOPOULOS, Joshua SCHWARTZ
  • Publication number: 20140215195
    Abstract: Combining profiles based on priorities associated therewith to create an effective profile are provided. A plurality of profiles defining one or more rules that are applicable to a functional computing object are identified. A priority corresponding to each applicable profile is determined. The applicable profiles are combined by the computing device based on the corresponding priorities to create an effective profile that includes no conflicting rules.
    Type: Application
    Filed: March 31, 2014
    Publication date: July 31, 2014
    Applicant: VMware, Inc.
    Inventors: Osten Kit Colbert, Moshe Zadka, Vera Asodi
  • Patent number: 8793428
    Abstract: A system for identifying an exiting process and removing traces and shadow page table pages corresponding to the process' page table pages. An accessed minimum virtual address is maintained corresponding to an address space. In one embodiment, whenever a page table entry corresponding to the accessed minimum virtual address changes from present to not present, the process is determined to be exiting and removal of corresponding trace and shadow page table pages is begun. In a second embodiment, consecutive present to not-present PTE transitions are tracked for guest page tables on a per address space basis. When at least two guest page tables each has at least four consecutive present to not-present PTE transitions, a next present to not-present PTE transition event in the address space leads to the corresponding guest page table trace being dropped and the shadow page table page being removed.
    Type: Grant
    Filed: January 22, 2013
    Date of Patent: July 29, 2014
    Assignee: VMware, Inc.
    Inventors: Qasim Ali, Raviprasad Mummidi, Kiran Tati
  • Publication number: 20140208124
    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 include 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.
    Type: Application
    Filed: March 24, 2014
    Publication date: July 24, 2014
    Applicants: DECHO CORPORATION, VMWARE, INC.
    Inventor: David John HARTLEY
  • Publication number: 20140208000
    Abstract: Techniques for surfacing host-side flash storage capacity to a plurality of VMs running on a host system are provided. In one embodiment, the host system creates, for each VM in the plurality of VMs, a flash storage space allocation in a flash storage device that is locally attached to the host system. The host system then causes the flash storage space allocation to be readable and writable by the VM as a virtual flash memory device.
    Type: Application
    Filed: January 23, 2013
    Publication date: July 24, 2014
    Applicant: VMware, Inc.
    Inventors: Thomas A. Phelan, Mayank Rawat, Kiran Madnani, Wei Zhang, Deng Liu, Sambasiva Bandarupalli
  • Publication number: 20140208321
    Abstract: A virtualized storage stack includes logical layers above the physical storage layer. Each logical layer allocates data blocks, and the data block allocation is propagated down to the physical storage layer. To facilitate contiguous storage, each layer of the virtualized storage stack maintains additional metadata associated with data blocks. For each data block, the metadata indicates whether the data block is free, provisioned and includes a tag that indicates when the data block was first written. Data blocks that were first written as part of the same write request share the same tag, and are mostly guaranteed to be physically co-located. Block allocations that reuse data blocks having the same tag are preferred. Such preference increases the likelihood of the blocks being contiguous in the physical storage as these blocks were allocated as part of the same first write.
    Type: Application
    Filed: March 20, 2014
    Publication date: July 24, 2014
    Applicant: VMWARE, INC.
    Inventors: Faraz SHAIKH, Murali VILAYANNUR
  • Publication number: 20140208001
    Abstract: Techniques for achieving crash consistency when performing write-behind caching using a flash storage-based cache are provided. In one embodiment, a computer system receives from a virtual machine a write request that includes data to be written to a virtual disk and caches the data in a flash storage-based cache. The computer system further logs a transaction entry for the write request in the flash storage-based cache, where the transaction entry includes information usable for flushing the data from the flash storage-based cache to a storage device storing the virtual disk. The computer system then communicates an acknowledgment to the VM indicating that the write request has been successfully processed.
    Type: Application
    Filed: January 23, 2013
    Publication date: July 24, 2014
    Applicant: VMware, Inc.
    Inventors: Deng Liu, Thomas A. Phelan, Ramkumar Vadivelu, Wei Zhang, Sandeep Uttamchandani, Li Zhou
  • Patent number: 8789049
    Abstract: A method for detecting malicious code within a first virtual machine comprising creating a snapshot of the first virtual machine and transferring the snapshot to a second machine. A scan operation is run on the snapshot using resources of the second machine. In response to detecting malicious code during the scan operation, action is taken at the first virtual machine to address the detection of the malicious code. Thus, the action in response to detecting the malicious code may include placing the first virtual machine in quarantine.
    Type: Grant
    Filed: September 20, 2012
    Date of Patent: July 22, 2014
    Assignee: VMware, Inc.
    Inventors: Gregory Hutchins, Christian Czezatke, Satyam B. Vaghani, Mallik Mahalingam, Shaw Chuang, Bich Cau Le
  • Patent number: 8788079
    Abstract: Methods, systems, and computer programs for monitoring quality of audio delivered over a communications channel are presented. One method includes an operation for defining timestamps. The timestamps are associated with a measure of time while delivering audio to a client computer, where each timestamp includes a plurality of timestamp bits. Further, the method includes an operation for modulating an audio signal with pseudo noise (PN) codes when a timestamp bit has a first logical value, and modulating the audio signal with a negative of the PN codes when the timestamp bit has a second logical value. After transmitting the modulated audio signal to the client computer, the timestamp bits are extracted from a received modulated audio signal to obtain received timestamps. The quality of the audio is assessed based on the received timestamps, and the quality of the audio is stored in computer memory.
    Type: Grant
    Filed: November 9, 2010
    Date of Patent: July 22, 2014
    Assignee: VMware, Inc.
    Inventor: Lawrence Andrew Spracklen
  • Publication number: 20140201725
    Abstract: In one embodiment, a computer system creates a first template VM that includes a first OS VMDK and a first software binary VMDK, and clones the first template VM to create a linked clone VM. The linked clone VM executes a guest OS by accessing the first OS VMDK and a software application by accessing the first software binary VMDK. The computer system further creates a second template VM that includes a second software binary VMDK, where the second software binary VMDK includes one or more upgrades to the software application that are not included in the first software binary VMDK. The computer system then detaches the first software binary VMDK from the linked clone VM and attaches the second software binary VMDK to the linked clone VM. The linked clone VM thereafter executes the software application by accessing the second software binary VMDK.
    Type: Application
    Filed: January 14, 2013
    Publication date: July 17, 2014
    Applicant: VMware, Inc.
    Inventors: Feng Tian, Jin Zhang, Jiajun Wang, Zhao Jin
  • Publication number: 20140201740
    Abstract: One embodiment entails delivering a software payload to guest software in a virtual machine so that the software payload is part of a file system accessible by the guest software, wherein the delivery is such that the software payload is part of a file system accessible by the guest software. The delivering utilizes a virtual device of the virtual machine, but does not involve either a virtual network interface card (NIC) or any virtual host bus adapter (VHBA) of the virtual machine. The delivering further includes establishing a data path from the software payload to the virtual machine and a guest agent of the virtual machine. During processing of the software payload, status from the guest agent is monitored. After reception of the status indicating completion of the processing of the software payload, the data path is deactivated.
    Type: Application
    Filed: March 17, 2014
    Publication date: July 17, 2014
    Applicant: VMware, Inc.
    Inventors: Bich Cau LE, Jagannath Gopal KRISHNAN, Mike MORRIS
  • Patent number: 8782310
    Abstract: A system for connecting the plurality of mobile devices to a computer is disclosed. The system includes a plurality of mobile devices connected to a computer through a network. Each of the plurality of mobile devices includes a mobile application configured to emulate the each of the plurality of mobile devices as a selected type of input/output (I/O) device for the computer. An operating system of the computer operates in conjunction with a session manager to connect the plurality of mobile devices as disparate selected types of I/O devices to the computer in a common user session.
    Type: Grant
    Filed: March 30, 2012
    Date of Patent: July 15, 2014
    Assignee: VMware, Inc.
    Inventors: Matthew David Ginzton, Dustin Michael Byford
  • Patent number: 8782768
    Abstract: Methods, computer-readable storage medium, and systems described herein facilitate enabling access to a virtual desktop of a host computing device. An authentication system receives one of an authentication token and a reference to the authentication token, wherein the authentication token is indicative of whether a user successfully logged in to an authentication portal using a client computing device. The authentication system generates a private key, a digital certificate, and a personal identification number (PIN) for the user in response to receiving the one of the authentication token and the reference to the authentication token. The private key, the digital certificate, and the PIN are stored in a virtual smartcard, and the client computing device is authorized to log into a virtual desktop using the virtual smartcard.
    Type: Grant
    Filed: June 15, 2012
    Date of Patent: July 15, 2014
    Assignee: VMware, Inc.
    Inventor: Per Olov Larsson