Hardware assisted software versioning of clustered applications
US-2017132000-A1 · May 11, 2017 · US
US10564959B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10564959-B2 |
| Application number | US-201715643410-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jul 6, 2017 |
| Priority date | Mar 14, 2017 |
| Publication date | Feb 18, 2020 |
| Grant date | Feb 18, 2020 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Apparatus and methods related to stored software libraries are provided. A computing device can receive versioned-shared-library information for a first software library used by a software application, where the versioned-shared-library information can include an identifier. The computing device can determine whether the computing device stores a copy of the first software library identified in the versioned-shared-library information by the identifier. The computing device can send a request for one of a full executable and a stripped executable for the software application, where the full executable includes the first software library, and where the stripped executable excludes the first software library. In response to the request, the computing device can receive the full executable or the stripped executable for the software application.
Opening claim text (preview).
What is claimed is: 1. A method, comprising: receiving, at a computing device, versioned-shared-library information for at least a first software library used by a software application, wherein the versioned-shared-library information for the first software library comprises an identifier of the first software library; determining whether or not the computing device does store a copy of the first software library identified in the versioned-shared-library information by the identifier of the first software library; after determining whether or not the computing device does store a copy of the first software library, sending a request for an executable for the software application, wherein the request comprises a request for a stripped executable when the computing device does store the copy of the first software library, wherein the request comprises a request for a full executable when the computing device does not store the copy of the first software library, and wherein the full executable comprises an executable for the software application that includes the first software library, and wherein the stripped executable comprises an executable for the software application that excludes the first software library; and in response to the request, receiving the requested executable for the software application for storage on the computing device. 2. The method of claim 1 , wherein determining whether or not the computing device does store the copy of the first software library identified in the versioned-shared-library information by the identifier of the first software library comprises determining that the computing device does store the copy of the first software library; wherein sending the request for the executable for the software application comprises sending the request for the stripped executable for the software application from the computing device to a second computing device; and wherein receiving the requested executable for the software application for storage on the computing device comprises receiving the stripped executable at the computing device from the second computing device. 3. The method of claim 1 , wherein determining whether or not the computing device stores the copy of the first software library identified in the versioned-shared-library information by the identifier of the first software library comprises determining that the computing device does not store the copy of the first software library; wherein sending the request for the executable for the software application comprises sending the request for the full executable for the software from the computing device to a second computing device; and wherein receiving the requested executable for the software application for storage on the computing device comprises receiving the full executable at the computing device from the second computing device. 4. The method of claim 1 , wherein the versioned-shared-library information for the first software library further comprises a version of the first software library; and the first software library is further identified by the version of the first software library. 5. The method of claim 4 , wherein the versioned-shared-library information for the first software library comprises a combined identifier specifying both a name of the first software library and the version of the first software library. 6. The method of claim 1 , wherein sending the request for the executable for the software application comprises sending the request for the stripped executable for the software application; and wherein the method further comprises: loading the stripped executable and the first software library into data storage of the computing device, wherein the first software library is identified using the identifier of the first software library and the version of the first software library; and after loading the stripped executable and the first software library into data storage, the computing device executing the loaded stripped executable to cause the computing device to perform one or more functions, wherein at least one function of the one or more functions is performed using software stored in the first software library. 7. The method of claim 1 , further comprising: after determining that the computing device does not store the copy of the first software library, locating a copy of the first software library based on the identifier of the first software library and a version of the first software library, and storing the located copy of the first software library on the computing device. 8. The method of claim 7 , wherein locating the copy of the first software library comprises: sending a request for the copy of the first software library, where the request comprises the identifier of the first software library and the version of the first software library, and after sending the request for the copy of the first software library, receiving the copy of the first software library at the computing device. 9. The method of claim 1 , wherein the versioned-shared-library information for at least the first software library further comprises information related to a hash sum of the first software library. 10. The method of claim 1 , wherein the computing device is configured to store a plurality of versions of a second software library identified by identifier and version, wherein each of the plurality of versions of the second software library share a common identifier, wherein each of the plurality of versions of the second software library differs, and wherein the computing device is configured to store a particular number of versions of the second software library. 11. The method of claim 10 , wherein the computing device is configured to determine a number of applications that use a first version of the second software library, and wherein the method further comprises: determining to free data storage of the computing device; after determining to free data storage, the computing device determining whether the number of applications that use the first version of the second software library is less than a threshold value; and after determining that the number of applications that use the first version of the second software library is less than the threshold value, removing the first version of the second software library from data storage on the computing device. 12. The method of claim 11 , wherein sending the request for the executable for the software application comprises: the computing device determining whether the number of applications that use the first version of the second software library is less than the threshold value; and after determining that the number of applications that use the first version of the second software library is less than the threshold value, sending a request for the full executable for the software application. 13. The method of claim 12 , wherein sending the request for the executable for the software application further comprises: after determining that the number of applications that use the first version of the second software library is not less than the threshold value, sending a request for the stripped executable for the software application. 14. The method of claim 11 , further comprising: determining to remove a first software executable that utilizes the first version of the second software library from the computing device; and after determining to remove the first software executable, the computing device: removing the first software executable, and decrementing the number of applications using the first version of the second software library.
Related publications grouped by family.
Answers are generated from the same data shown on this page.