Patents by Inventor James Beveridge

James Beveridge 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).

  • Patent number: 9898328
    Abstract: An adaptive virtual desktop architecture is provided. Application install or assignment is evaluated, such as by using heuristics to identify applications that may present compatibility problems. Upon determining that a newly installed application may have compatibility problems when associated with a non-persistent virtual desktop, a promotion to a persistent virtual desktop occurs.
    Type: Grant
    Filed: June 6, 2016
    Date of Patent: February 20, 2018
    Assignee: VMware, Inc.
    Inventors: Daniel James Beveridge, Yao Zhang, Jairam Choudhary
  • Patent number: 9891953
    Abstract: Aspects of the disclosure allocate shares of processing resources or other physical resources among virtual machines (VMs) operating as, for example, virtual desktops on a plurality of host computing devices. Allocations of resources are adjusted based on the user activity, VM activity, and/or application activity detected by an agent executing on each VM. Allocated shares may be boosted, unboosted, or normalized, depending on the type and duration of detected activity, by a resource allocation manager executing on a management server.
    Type: Grant
    Filed: November 14, 2016
    Date of Patent: February 13, 2018
    Assignee: VMware, Inc.
    Inventors: Daniel James Beveridge, Banit Agrawal
  • Publication number: 20170371519
    Abstract: Embodiments perform automatic document handling by retrieving icons from local document handlers or from an application volumes manager, without installing the application locally. Embodiments further perform on-demand application mounting by intercepting and suspending requests to launch applications until the appropriate virtual disk, corresponding to the application, is mounted to the disk subsystem by the application volumes manager. The application launch is then resumed.
    Type: Application
    Filed: June 22, 2016
    Publication date: December 28, 2017
    Inventors: Daniel James Beveridge, Fei Huang, Matthew Conover
  • Publication number: 20170351538
    Abstract: An adaptive virtual desktop architecture is provided. Application install or assignment is evaluated, such as by using heuristics to identify applications that may present compatibility problems. Upon determining that a newly installed application may have compatibility problems when associated with a non-persistent virtual desktop, a promotion to a persistent virtual desktop occurs.
    Type: Application
    Filed: June 6, 2016
    Publication date: December 7, 2017
    Inventors: Daniel James Beveridge, Yao Zhang, Jairam Choudhary
  • Patent number: 9804798
    Abstract: A method of enabling “fast” suspend and “rapid” resume of virtual machines (VMs) employs a cache that is able to perform input/output operations at a faster rate than a storage device provisioned for the VMs. The cache may be local to a computer system that is hosting the VMs or may be shared cache commonly accessible to VMs hosted by different computer systems. The method includes the steps of saving the state of the VM to a checkpoint file stored in the cache and locking the checkpoint file so that data blocks of the checkpoint file are maintained in the cache and are not evicted, and resuming execution of the VM by reading into memory the data blocks of the checkpoint file stored in the cache.
    Type: Grant
    Filed: February 11, 2013
    Date of Patent: October 31, 2017
    Assignee: VMware, Inc.
    Inventor: Daniel James Beveridge
  • Publication number: 20170220374
    Abstract: Embodiments described herein rapidly pre-migrate child virtual machines (VMs) by leveraging shared memory resources between parent and child VMs. In a first, proactive phase, at least a portion of the memory of a parent VM is migrated to a plurality of potential target hosts. In a second, reactive phase, after a request is detected to migrate a child VM to a selected target host, differences in memory are transferred to the selected target host. Aspects of the disclosure offer a high performance, resource efficient solution that outperforms traditional approaches in areas of software compatibility, stability, quality of service control, resource utilization, and more.
    Type: Application
    Filed: April 17, 2017
    Publication date: August 3, 2017
    Applicant: VMware, Inc.
    Inventors: Daniel James Beveridge, Gabriel Tarasuk-Levin
  • Publication number: 20170192814
    Abstract: Examples quickly suspend and resume virtual desktops on demand or on schedule. Virtual desktops, or desktops as a service, are provided to users, where the virtual desktop is a forked VM, cloned VM, or otherwise at least a partial duplicate of an existing VM. The virtual desktop points to existing memory maintained by the existing VM, and the virtual desktop only writes to memory the pages that the virtual desktop creates or modifies.
    Type: Application
    Filed: March 21, 2017
    Publication date: July 6, 2017
    Applicant: VMware, Inc.
    Inventors: Daniel James Beveridge, David Snowdon
  • Publication number: 20170171213
    Abstract: Examples described herein enable memory state sharing among a plurality of virtual machines (VM) including a parent VM and a child VM. A request for memory state sharing between the parent VM and the child VM is received, and the parent VM is suspended. The child VM resumes execution of one or more suspended applications. In one example, the child FM is forked with pre-loaded, suspended applications from the parent VM. Aspects of the disclosure offer a high performance, resource efficient solution that outperforms traditional approaches in areas of software compatibility, stability, quality of service control, re-source utilization, and more.
    Type: Application
    Filed: February 17, 2017
    Publication date: June 15, 2017
    Applicant: VMware, Inc.
    Inventors: Daniel James Beveridge, Blake Watts, Per Olov Larsson, Banit Agrawal, Hui Li
  • Patent number: 9626212
    Abstract: Embodiments described herein rapidly migrate child virtual machines (VM) by leveraging shared memory resources between parent and child VMs. In a first, proactive phase, parent VMs are migrated to a plurality of potential target hosts. In a second, reactive phase, after a request is received to migrate a child VM to a selected target host, memory blocks that are unique to the child VM are migrated to the selected target host. In some examples, memory blocks are compressed and decompressed as needed. In other examples, the operation environment is modified. Aspects of the disclosure offer a high performance, resource efficient solution that outperforms traditional approaches in areas of software compatibility, stability, quality of service control, resource utilization, and more.
    Type: Grant
    Filed: December 31, 2014
    Date of Patent: April 18, 2017
    Assignee: VMware, Inc.
    Inventors: Daniel James Beveridge, Gabriel Tarasuk-Levin
  • Publication number: 20170103117
    Abstract: User profiles of remote desktops are managed in a crash-consistent manner. When a user logs into a remote desktop, metadata of the user profile is loaded from persistent storage while registry settings and files of the user profile are loaded asynchronously with respect to the login. During the remote desktop session, snapshots of the remote desktop image in persistent storage are generated periodically, and a change log that indicates changes to the user profile is created therefrom. The user profile stored in persistent storage is updated lazily using the change log at opportunistic times after snapshot generation. When the user logs out of the remote desktop, the user profile stored in the persistent storage is updated with any additional changes to the user profile by extracting the changes from the copy-on-write cache associated with the most recent snapshot.
    Type: Application
    Filed: December 21, 2016
    Publication date: April 13, 2017
    Inventors: Scott Howard DAVIS, Daniel James BEVERIDGE, Jonathan CLARK, Blake WATTS
  • Patent number: 9619268
    Abstract: Examples quickly suspend and resume virtual desktops on demand or on schedule. Virtual desktops, or desktops as a service, are provided to users, where the virtual desktop is a forked VM, cloned VM, or otherwise at least a partial duplicate of an existing VM. The virtual desktop points to existing memory maintained by the existing VM, and the virtual desktop only writes to memory the pages that the virtual desktop creates or modifies.
    Type: Grant
    Filed: February 5, 2015
    Date of Patent: April 11, 2017
    Assignee: VMware, Inc.
    Inventors: Daniel James Beveridge, David Snowdon
  • Publication number: 20170083371
    Abstract: Aspects of the disclosure allocate shares of processing resources or other physical resources among virtual machines (VMs) operating as, for example, virtual desktops on a plurality of host computing devices. Allocations of resources are adjusted based on the user activity, VM activity, and/or application activity detected by an agent executing on each VM. Allocated shares may be boosted, unboosted, or normalized, depending on the type and duration of detected activity, by a resource allocation manager executing on a management server.
    Type: Application
    Filed: November 14, 2016
    Publication date: March 23, 2017
    Inventors: Daniel James Beveridge, Banit Agrawal
  • Publication number: 20170068565
    Abstract: Examples perform creation of a non-persistent virtual machine with a persistent machine identity associated with the user of the virtual machine, to provide consistent virtual desktop sessions to the user. Some examples contemplate that the machine identity is inserted into a virtual machine created through cloning, forking, or from a virtual machine pool.
    Type: Application
    Filed: November 21, 2016
    Publication date: March 9, 2017
    Applicant: VMware, Inc.
    Inventor: Daniel James Beveridge
  • Publication number: 20170060605
    Abstract: Embodiments provide for application-specific provisioning of files or registry keys. As applications are installed or launched, data is recorded by an application virtualization engine, and an index is created linking the recorded data to both the application and the underlying files or registry keys. As applications are requested (e.g., launched, updated, or the like), the application virtualization engine reveals various copies of file or registry keys to the application on demand or in accordance with a policy.
    Type: Application
    Filed: June 9, 2016
    Publication date: March 2, 2017
    Inventors: Fei Huang, Daniel James Beveridge
  • Publication number: 20170060887
    Abstract: Disclosed are various examples for downloading data objects by enforcing a threshold amount of allocated data. A file sync application determines which data objects to download to the client device such that the total amount of downloaded data meets or falls below the threshold amount of allocated data. File system entries for undownloaded data objects are also downloaded and stored in a file system of the client device. If a process attempts to access an undownloaded data object, the file sync application downloads the data object and evicts another data object, if necessary, according to the threshold amount of allocated data.
    Type: Application
    Filed: March 24, 2016
    Publication date: March 2, 2017
    Inventors: Gerard Murphy, Daniel James Beveridge, Blake Ryan Watts, Nicholas Petros Grivas
  • Patent number: 9578032
    Abstract: Examples described herein enable memory state sharing among a plurality of virtual machines (VM) including a parent VM and a child VM. A request for memory state sharing between the parent VM and the child VM is received, and the parent VM is suspended. The child VM resumes execution of one or more suspended applications. In one example, the child FM is forked with pre-loaded, suspended applications from the parent VM. Aspects of the disclosure offer a high performance, resource efficient solution that outperforms traditional approaches in areas of software compatibility, stability, quality of service control, re-source utilization, and more.
    Type: Grant
    Filed: February 5, 2015
    Date of Patent: February 21, 2017
    Assignee: VMware, Inc.
    Inventors: Daniel James Beveridge, Blake Watts, Per Olov Larsson, Banit Agrawal, Hui Li
  • Patent number: 9575688
    Abstract: A method of enabling “fast” suspend and “rapid” resume of virtual machines (VMs) employs a cache that is able to perform input/output operations at a faster rate than a storage device provisioned for the VMs. The cache may be local to a computer system that is hosting the VMs or may be shared cache commonly accessible to VMs hosted by different computer systems. The method includes the steps of saving the state of the VM to a checkpoint file stored in the cache and locking the checkpoint file so that data blocks of the checkpoint file are maintained in the cache and are not evicted, and resuming execution of the VM by reading into memory the data blocks of the checkpoint file stored in the cache.
    Type: Grant
    Filed: February 25, 2013
    Date of Patent: February 21, 2017
    Assignee: VMware, Inc.
    Inventors: Daniel James Beveridge, Thiruvengada Govindan Thirumal, Kiran Madnani, Neeraj Goyal
  • Patent number: 9542080
    Abstract: 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 may use an interface interaction API or software framework to programmatically open and manipulate a context menu on 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. The client constructs and displays a native graphical user interface element at the client device that is a virtual representation of the context menu at the remote desktop.
    Type: Grant
    Filed: August 23, 2013
    Date of Patent: January 10, 2017
    Assignee: VMware, Inc.
    Inventors: Daniel James Beveridge, Ming Zhao
  • Publication number: 20160364200
    Abstract: A selected screen, such as a monitoring tool, operating on a remote desktop is exported to a mobile client device, such as a smart phone, tablet, smart watch, etc. The client device polls the remote desktop for images, pointers, commands, etc. relating to the selected screen. The remote desktop provides the requested data to the client device through a command queue maintained by the remote desktop.
    Type: Application
    Filed: August 29, 2016
    Publication date: December 15, 2016
    Inventors: Daniel James Beveridge, Blake Watts, Jian Mu
  • Publication number: 20160364201
    Abstract: Files are mirrored between a desktop device and a mobile device in a seamless manner so that a user may work on the mirrored files on either device without having to save or send files beforehand. The user may interact with a mirrored file on a desktop, physically leave the desktop, and take a mobile device that has the mirrored file with him or her and continue interacting with the file.
    Type: Application
    Filed: August 29, 2016
    Publication date: December 15, 2016
    Inventors: Daniel James Beveridge, Blake Watts, Jian Mu