Capturing and deploying applications using maximal and minimal sets

US10223092B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10223092-B2
Application numberUS-201615178540-A
CountryUS
Kind codeB2
Filing dateJun 9, 2016
Priority dateJun 9, 2016
Publication dateMar 5, 2019
Grant dateMar 5, 2019

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Systems and methods are described for packaging and deploying applications using minimal and maximal component sets. A minimal set of application components that includes at least the necessary components for launching the application is first downloaded to an endpoint device from a central server. The application is launched on the endpoint from the minimal set. If the application requests a missing component that is not available on the endpoint, the missing component is requested and delivered on-demand from a maximal set located on the server, where the maximal set contains all possible application components. The application is suspended during the download of the missing component. After the missing component is downloaded, the application is resumed, having access to the missing component on the endpoint.

First claim

Opening claim text (preview).

What is claimed is: 1. A method, comprising: transmitting, from a management server, a minimal set of application components stored on the management server to each client device in a plurality of client devices, the minimal set being deployable on each client device to install a corresponding application with sufficient functionality to launch the application, the minimal set missing at least a portion of the application components required by the application for full functionality; installing the application on each client device in the plurality of client devices by deploying the minimal set; executing the application from the deployed minimal set on each client device in the plurality of client devices; during execution of the application from the deployed minimal set on the plurality of client devices, receiving at the management server, from one or more requesting client devices in the plurality of client devices, a request for a missing application component that was not included in the minimal set; locating the missing application component in a maximal set, the maximal set comprising application components not available in the minimal set; conveying the located missing application component in the maximal set to the requesting one or more client devices; and in response to receiving at the management server a predetermined threshold number of requests for the missing application component from client devices executing the application from the minimal set, modifying the minimal set stored on the management server by adding the missing application component to the minimal set. 2. The method of claim 1 , further comprising: during execution of the application from the minimal set on the plurality of client devices, detecting, at the requesting client devices, an access by the application to the missing application component; suspending execution of the application on the requesting client devices; and sending the request for the missing application component from the requesting client devices to the management server. 3. The method of claim 1 , wherein the maximal set is created by capturing disk content from a computing device on which the application is installed, according to a predefined policy. 4. The method of claim 3 , wherein the predefined policy instructs at least one of: to capture all content on the computing device, or to capture all content on the computing device except content in predefined excluded areas that are deemed irrelevant to execution of the application. 5. The method of claim 1 , further comprising: conveying a manifest identifying components in the maximal set to the plurality of client devices. 6. The method of claim 5 , further comprising: determining, at the requesting client devices, whether the missing application component is available in the maximal set based on the manifest. 7. The method of claim 3 , wherein the predefined policy instructs to capture content on the computing device in all memory locations deemed to be possible locations of application components. 8. A computing device, comprising: at least one processor; and memory including instructions that, when executed by the at least one processor, cause the computing device to perform the steps of: transmitting, from a management server, a minimal set of application components stored on the management server to each client device in a plurality of client devices, the minimal set being deployable on each client device to install a corresponding application with sufficient functionality to launch the application, the minimal set missing at least a portion of the application components required by the application for full functionality; installing the application on each client device in the plurality of client devices by deploying the minimal set; executing the application from the deployed minimal set on each client device in the plurality of client devices; during execution of the application from the deployed minimal set on the plurality of client devices, receiving at the management server, from one or more requesting client devices in the plurality of client devices, a request for a missing application component that was not included in the minimal set; locating the missing application component in a maximal set, the maximal set comprising application components not available in the minimal set; conveying the located missing application component in the maximal set to the requesting one or more client device; and in response to receiving at the management server a predetermined threshold number of requests for the missing application component from client devices executing the application from the minimal set, modifying the minimal set stored on the management server by adding the missing application component to the minimal set. 9. The computing device of claim 8 , wherein the memory further includes instructions that when executed by the at least one processor, cause the computing device to perform the steps of: during execution of the application from the minimal set on the plurality of client devices, detecting, at the requesting client devices, an access by the application to the missing application component; suspending execution of the application on the requesting client devices; and sending the request for the missing application component from the requesting client devices to the management server. 10. The computing device of claim 8 , wherein the maximal set is created by capturing disk content from a computing device on which the application is installed, according to a predefined policy. 11. The computing device of claim 10 , wherein the predefined policy instructs at least one of: to capture all content on the computing device, or to capture all content on the computing device except content in predefined excluded areas that are deemed irrelevant to execution of the application. 12. The computing device of claim 8 , wherein the memory further includes instructions that when executed by the at least one processor, cause the computing device to perform the steps of: conveying a manifest identifying components in the maximal set to the plurality of client devices. 13. The computing device of claim 12 , wherein the memory further includes instructions that when executed by the at least one processor, cause the computing device to perform the steps of: determining, at the requesting client devices, whether the missing application component is available in the maximal set based on the manifest. 14. The computing device of claim 10 , wherein the predefined policy instructs to capture content on the computing device in all memory locations deemed to be possible locations of application components. 15. A non-transitory computer readable storage medium comprising one or more sequences of instructions, the instructions when executed by one or more processors causing the one or more processors to execute the operations of: transmitting, from a management server, a minimal set of application components stored on the management server to each client device in a plurality of client devices, the minimal set being deployable on each client device to install a corresponding application with sufficient functionality to launch the application, the minimal set missing at least a portion of the application components required by the application for full functionality; installing the application on each client device in the plurality of client devices by deploying the minimal set; executing the application from the deployed minimal set on each client device in the plurality of client device

Assignees

Inventors

Classifications

  • H04L67/34Primary

    involving the movement of software or configuration parameters  (network booting or remote initial program loading [RIPL] G06F9/4416) · CPC title

  • Uninstallation · CPC title

  • G06F8/60Primary

    Software deployment · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10223092B2 cover?
Systems and methods are described for packaging and deploying applications using minimal and maximal component sets. A minimal set of application components that includes at least the necessary components for launching the application is first downloaded to an endpoint device from a central server. The application is launched on the endpoint from the minimal set. If the application requests a m…
Who is the assignee on this patent?
Vmware Inc
What technology area does this patent fall under?
Primary CPC classification H04L67/34. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Mar 05 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).