Patents by Inventor VMware, Inc.

VMware, Inc. has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20140297941
    Abstract: One embodiment of the system described herein facilitates a virtualized heterogeneous disk that supports differentiated storage service qualities. During operation, the system mounts a plurality of partitions of a heterogeneous disk at different mount points, each mount point corresponding to a level of quality of service (QoS). The system then receives a write command and identifies a QoS level indication associated with the write command. Subsequently, the system selects a partition on the heterogeneous disk with performance parameters matching the identified QoS level and writes data to the selected partition. The heterogeneous disk is an abstraction of a plurality of virtualized storage devices. Furthermore, the heterogeneous disk has a single block address space, and the virtualized storage devices are allowed to have differentiated performance parameters, thereby facilitating differentiated QoS levels in the heterogeneous disk.
    Type: Application
    Filed: March 27, 2013
    Publication date: October 2, 2014
    Applicant: VMware, Inc.
    Inventor: VMware, Inc.
  • Publication number: 20140297780
    Abstract: The instant disclosure describes embodiments of a system and method for migrating virtual machine (VM)-specific content cached in a solid state drive (SSD) attached to an original host. During operation, the original host receives event indicating an upcoming migration of a VM to a destination host. In response, the original host transmits a set of metadata associated with the SSD cache to the destination host. The metadata indicates a number of data blocks stored in the SSD cache, thereby allowing the destination host to pre-fetch data blocks specified in the metadata from a storage shared by the original host and the destination host. Subsequently, the original host receives a power-off event for the VM, and transmits a dirty block list to the destination. The dirty block list specifies one or more data blocks that have changed since the transmission of the metadata.
    Type: Application
    Filed: March 26, 2013
    Publication date: October 2, 2014
    Applicant: VMware, Inc.
    Inventor: VMware, Inc.
  • Publication number: 20140195933
    Abstract: The disclosure herein describes a chat system for intelligent automatic switching between multiple chat windows. During operation, the system monitors activities occurring within the multiple chat windows and determines whether a window-switching operation is needed based on the monitored activities. In response to determining that the window-switching operation is needed, the system automatically performs the window-switching operation without the need for a user of the chat application to perform the window-switching operation manually.
    Type: Application
    Filed: January 10, 2013
    Publication date: July 10, 2014
    Applicant: VMWARE, INC.
    Inventor: VMware, Inc.
  • Publication number: 20140092907
    Abstract: The disclosure herein describes a virtual extensible local area network (VXLAN) gateway. During operation, the VXLAN gateway receives, from a physical host, an Ethernet packet destined for a virtual machine residing in a remote layer-2 network broadcast domain that is different from a local layer-2 network broadcast domain where the physical host resides. The VXLAN gateway then determines a VXLAN identifier for the received Ethernet packet. The VXLAN gateway further encapsulates the Ethernet packet with the virtual extensible local area network identifier and an Internet Protocol (IP) header, and forwards the encapsulated packet to an IP network, thereby allowing the packet to be transported to the virtual machine via the IP network and allowing the remote layer-2 network broadcast domain and the local layer-2 network broadcast domain to be part of a common layer-2 broadcast domain.
    Type: Application
    Filed: March 8, 2013
    Publication date: April 3, 2014
    Applicant: VMware, Inc.
    Inventor: VMware, Inc.
  • Publication number: 20130219221
    Abstract: The embodiments described herein include a host that includes an operating system and a storage simulation module in communication with the host. The storage simulation module includes a pseudo-adapter configured to emulate a storage adapter and a pseudo-storage device coupled to the pseudo-adapter, wherein the pseudo-storage device is configured to emulate a storage device. The storage simulation module is configured to simulate an error event for the pseudo-adapter and/or the pseudo-storage device upon receipt of an operation from the operating system.
    Type: Application
    Filed: February 8, 2013
    Publication date: August 22, 2013
    Applicant: VMWARE, INC.
    Inventor: VMWARE, INC.
  • Publication number: 20130219286
    Abstract: Methods and systems for n-way cloning and synchronization of a user desktop image are provided. Example embodiments provide a Cloning and Synchronization System (“CSS”) which binds a server stored CVD object representing the user's desktop image to one or more endpoint devices. Each endpoint device receives a clone of the CVD object that comprises one or more layers of the server CVD depending upon the suitability of the endpoint device hardware and operating system to the server stored desktop. The cloned CVDs in the endpoint devices are then kept synchronized by synchronization operations. In one embodiment, the CSS allows only one endpoint device to act as a master device and push up changes to the server CVD. These changes are then pushed down to the other devices using different synchronization methods dependent upon the layer.
    Type: Application
    Filed: December 31, 2012
    Publication date: August 22, 2013
    Applicant: VMware, Inc.
    Inventor: VMware, Inc.
  • Publication number: 20130219222
    Abstract: The embodiments described herein include a host that includes an operating system and a storage simulation module in communication with the host. The storage simulation module includes a pseudo-adapter configured to emulate a storage adapter and a pseudo-storage device coupled to the pseudo-adapter, wherein the pseudo-storage device is configured to emulate a storage device. The storage simulation module is configured to simulate an error event for the pseudo-adapter and/or the pseudo-storage device upon receipt of an operation from the operating system.
    Type: Application
    Filed: February 8, 2013
    Publication date: August 22, 2013
    Inventor: VMware, Inc.
  • Publication number: 20130212579
    Abstract: Methods and systems for n-way cloning and synchronization of a user desktop image are provided. Example embodiments provide a Cloning and Synchronization System (“CSS”) which binds a server stored CVD object representing the user's desktop image to one or more endpoint devices. Each endpoint device receives a clone of the CVD object that comprises one or more layers of the server CVD depending upon the suitability of the endpoint device hardware and operating system to the server stored desktop. The cloned CVDs in the endpoint devices are then kept synchronized by synchronization operations. In one embodiment, the CSS allows only one endpoint device to act as a master device and push up changes to the server CVD. These changes are then pushed down to the other devices using different synchronization methods dependent upon the layer.
    Type: Application
    Filed: December 31, 2012
    Publication date: August 15, 2013
    Applicant: VMware, Inc.
    Inventor: VMware, Inc.
  • Publication number: 20130212161
    Abstract: Methods and systems for n-way cloning and synchronization of a user desktop image are provided. Example embodiments provide a Cloning and Synchronization System (“CSS”) which binds a server stored CVD object representing the user's desktop image to one or more endpoint devices. Each endpoint device receives a clone of the CVD object that comprises one or more layers of the server CVD depending upon the suitability of the endpoint device hardware and operating system to the server stored desktop. The cloned CVDs in the endpoint devices are then kept synchronized by synchronization operations. In one embodiment, the CSS allows only one endpoint device to act as a master device and push up changes to the server CVD. These changes are then pushed down to the other devices using different synchronization methods dependent upon the layer.
    Type: Application
    Filed: December 31, 2012
    Publication date: August 15, 2013
    Applicant: VMware, Inc.
    Inventor: VMware, Inc.
  • Publication number: 20130212480
    Abstract: Methods and systems for n-way cloning and synchronization of a user desktop image are provided. Example embodiments provide a Cloning and Synchronization System (“CSS”) which binds a server stored CVD object representing the user's desktop image to one or more endpoint devices. Each endpoint device receives a clone of the CVD object that comprises one or more layers of the server CVD depending upon the suitability of the endpoint device hardware and operating system to the server stored desktop. The cloned CVDs in the endpoint devices are then kept synchronized by synchronization operations. In one embodiment, the CSS allows only one endpoint device to act as a master device and push up changes to the server CVD. These changes are then pushed down to the other devices using different synchronization methods dependent upon the layer.
    Type: Application
    Filed: December 31, 2012
    Publication date: August 15, 2013
    Applicant: VMware, Inc.
    Inventor: VMware, Inc.
  • Publication number: 20130205062
    Abstract: The prioritization of large memory page mapping is a function of the access bits in the L1 page table. In a first phase of operation, the number of set access bits in each of the L1 page tables is counted periodically and a current count value is calculated therefrom. During the first phase, no pages are mapped large even if identified as such. After the first phase, the current count value is used to prioritize among potential large memory pages to determine which pages to map large. The system continues to calculate the current count value even after the first phase ends. When using hardware assist, the access bits in the nested page tables are used and when using software MMU, the access bits in the shadow page tables are used for large page prioritization.
    Type: Application
    Filed: January 29, 2013
    Publication date: August 8, 2013
    Applicant: VMWARE, INC.
    Inventor: VMware, Inc.
  • Publication number: 20130205113
    Abstract: Memory pages that are allocated to a memory consumer and continue to be accessed by the memory consumer are included in a free list, so that they may be immediately allocated to another memory consumer as needed during the course of normal operation without preserving the original contents of the memory page. When a memory page in the free list is accessed to perform a read, a generation number associated with the memory page is compared with a stored copy. If the two match, the read is performed on the memory page. If the two do not match, the read is not performed on the memory page.
    Type: Application
    Filed: February 6, 2013
    Publication date: August 8, 2013
    Applicant: VMWARE, INC.
    Inventor: VMWARE, INC.
  • Publication number: 20130205106
    Abstract: In a virtualized computer system, guest memory pages are mapped to disk blocks that contain identical contents and the mapping is used to improve management processes performed on virtual machines, such as live migration and snapshots. These processes are performed with less data being transferred because the mapping data of those guest memory pages that have identical content stored on disk are transmitted instead of the their contents. As a result, live migration and snapshots can be carried out more quickly. The mapping of the guest memory pages to disk blocks can also be used to optimize other tasks, such as page swaps and memory error corrections.
    Type: Application
    Filed: February 6, 2013
    Publication date: August 8, 2013
    Applicant: VMWARE, INC.
    Inventor: VMware, Inc.
  • Publication number: 20130204927
    Abstract: Embodiments enable display updates other than a video stream in a graphical user interface (GUI) to be rendered, encoded, and transmitted exclusive of the video stream. A virtual machine generates a GUI that includes an encoded video stream and other display updates. A virtual graphics processing unit (VGPU) stack associated with the VM renders the other display updates of the GUI to a framebuffer. The rendered display updates are encoded and transmitted to a client for display. The encoded video stream, or a modified (e.g., reduced bit rate) version of the encoded video stream, may be transmitted to the client, such that the client can display the encoded video stream within the GUI. For example, the encoded video stream may be selectively transmitted to the client based on the performance capabilities of the client.
    Type: Application
    Filed: November 1, 2012
    Publication date: August 8, 2013
    Applicant: VMware, Inc.
    Inventor: VMware, Inc.
  • Publication number: 20130198246
    Abstract: A method and system is provided for initializing files such as, for example and without limitation, pre-allocated files or raw device mapping (RDM) files, by delaying initializing file blocks. In accordance with one or more embodiments of the present invention, file blocks are associated with corresponding indicators to track un-initialized blocks.
    Type: Application
    Filed: March 12, 2013
    Publication date: August 1, 2013
    Applicant: VMware, Inc.
    Inventor: VMware, Inc.
  • Publication number: 20130185509
    Abstract: Systems and methods for migration between computing machines are disclosed. The source and target machines can be either physical or virtual; the source can also be a machine image. The target machine is connected to a snapshot or image of the source machine file system, and a redo-log file is created on the file system associated with the target machine. The target machine begins operation by reading data directly from the snapshot or image of the source machine file system. Thereafter, all writes are made to the redo-log file, and subsequent reads are made from the redo-log file if it contains data for the requested sector or from the snapshot or image if it does not. The source machine continues to be able to run separately and simultaneously after the target machine begins operation.
    Type: Application
    Filed: December 18, 2012
    Publication date: July 18, 2013
    Applicant: VMWARE, INC.
    Inventor: VMware, Inc.
  • Publication number: 20130185723
    Abstract: A method enables a central management service to operate on individual files within virtual disks associated with different virtual machines (VMs) running in one or more host computers that are each networked to a remote storage system. An IO request from a VM is received at a virtualization software layer on a host computer, wherein the IO request relates to a file stored in a virtual disk associated with the VM, and the file is individually stored in the remote storage system in accordance with a file system. The central management service is notified of the received IO request and uses the file system to access the file in the remote storage system to perform a management task on the file, and the IO request is then performed on the file by the virtualization software layer upon a notification of a successful completion of the management task.
    Type: Application
    Filed: March 5, 2013
    Publication date: July 18, 2013
    Applicant: VMWARE, INC.
    Inventor: VMWARE, INC.
  • Publication number: 20130179655
    Abstract: 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: Application
    Filed: February 26, 2013
    Publication date: July 11, 2013
    Applicant: VMware, Inc.
    Inventor: VMware, Inc.
  • Publication number: 20130179985
    Abstract: Systems and methods for obfuscating user data in a remote web-based application are disclosed. According to one method, user inputs to a displayed web page of the remote web-based application are received at a first web browser that is used by the user, wherein at least a portion of the user inputs comprise user-inputted data intended to be stored at the web-based application. The user inputs are transmitted to a management component that is configured to interact with a second web browser that communicates with the web-based application. The management component obfuscates at least a portion of the user-inputted data and forwards the obfuscated and un-obfuscated portions of the user inputs to the second web browser, which correspondingly transmits the obfuscated and un-obfuscated portions of the user inputs to the remote web-based application.
    Type: Application
    Filed: January 4, 2013
    Publication date: July 11, 2013
    Applicant: VMWARE, INC.
    Inventor: VMware, Inc.
  • Publication number: 20130167147
    Abstract: Methods, systems, and computer programs for providing an application server appliance utilizing one or more virtual machines are described. The application server appliance may be a virtual machine having a reduced guest operating system, a runtime environment, and a management agent installed therein. An appliance controller automatically determines one or more configurations and/or settings for the runtime environment based on a variety of factors, including the set up of the virtual machine appliance. The appliance controller generates an application package having the determined settings and transmits the package to the application server appliance, wherein the application package is configured to be executed by the runtime environment.
    Type: Application
    Filed: December 17, 2012
    Publication date: June 27, 2013
    Applicant: VMware, Inc.
    Inventor: VMware, Inc.