Selecting computer configurations based on application usage-based clustering
US-2021303582-A1 · Sep 30, 2021 · US
US11836507B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11836507-B2 |
| Application number | US-202016905589-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jun 18, 2020 |
| Priority date | Jun 18, 2020 |
| Publication date | Dec 5, 2023 |
| Grant date | Dec 5, 2023 |
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.
Systems and methods for pre-loading applications with a constrained memory budget and prioritizing the applications based on contextual information are described. An Information Handling System (IHS) may include a processor and a memory coupled to the processor, the memory having program instructions stored thereon that, upon execution by the processor, cause the IHS to: collect user context information and system context information, detect a triggering event based upon the user context information and the system context information, identify a memory budget for pre-loading one or more applications, and select the one or more applications with one or more settings configured to maintain a memory usage for the pre-loading below the memory budget.
Opening claim text (preview).
The invention claimed is: 1. An Information Handling System (IHS), comprising: a processor; and a memory coupled to the processor, the memory having program instructions stored thereon that, upon execution by the processor, cause the IHS to: receive a ranked list of applications from the remote server, wherein the ranked list comprises, for each given application: (i) one or more associated settings, (ii) a responsiveness score representative of a metric inversely proportional to a time it takes to load the given application with the one or more associated settings, and (iii) a memory utilization value representative of an amount of memory it takes to load the given application with the one or more associated settings; select a memory budget for pre-loading applications; prior to the pre-loading, select one or more applications from the ranked list and configure each selected application with a corresponding one or more associated settings identified in the ranked list to maintain a memory usage for the pre-loading below the memory budget; and pre-load the one or more applications into a cache memory. 2. The IHS of claim 1 , wherein the memory budget indicates a percentage of total available memory manually selected by a user for the pre-loading. 3. The IHS of claim 1 , wherein the program instructions, upon execution, further cause the IHS to collect user context information and system context information. 4. The IHS of claim 3 , wherein the user context information comprises at least one of: an identity of a user, a time-of-day, a calendar event, a type of calendar event, an application currently under execution, a duration of execution of an application, a mode of execution of an application, a user's proximity to the IHS, or a user's gaze direction. 5. The IHS of claim 3 , wherein the system context information comprises at least one of: a current location of the IHS, a current memory usage, a characteristic of a current network connection, a current power usage, an identification of a currently connected peripheral device, or a current IHS posture. 6. The IHS of claim 3 , wherein the memory budget indicates a percentage of total available memory automatically selected for the pre-loading, at least in part, based upon the historical user context information and the system context information. 7. The IHS of claim 3 , wherein to select the one or more applications, the program instructions, upon execution, further cause the IHS to: transmit the user context information and the system context information to a remote server configured to rank applications by priority, at least in part, based upon historical context information and system context information. 8. The IHS of claim 1 , wherein to select the one or more applications, the program instructions, upon execution, further cause the IHS to: select a first highest ranked application having a first associated setting, a first responsiveness score, and a first memory utilization; and in response to a total memory utilization satisfying the memory budget, select a second highest ranked application having a second associated setting, a second responsiveness score, and a second memory utilization. 9. The IHS of claim 8 , wherein at least one of the first or second associated settings comprise an online mode or an offline mode. 10. The IHS of claim 8 , wherein at least one of the first or second responsiveness scores comprises a metric inversely proportional to a time it takes to load the first or second highest application with the first or second associated setting, respectively. 11. The IHS of claim 8 , wherein at least one of the first or second memory utilization comprises an amount of memory that it takes to load the first or second highest application with the first or second associated setting, respectively. 12. A hardware memory storage device having program instructions stored thereon that, upon execution by one or more processors of an Information Handling System (IHS), cause the IHS to: receive a ranked list of applications from a remote server, wherein the ranked list comprises, for each given application: (i) one or more associated settings, (ii) a responsiveness score representative of a metric inversely proportional to a time it takes to load the given application with the one or more associated settings, and (iii) a memory utilization value representative of an amount of memory it takes to load the given application with the one or more associated settings; select a memory budget for pre-loading applications; prior to the pre-loading, select one or more applications from the ranked list and configure each selected application with one or more associated settings to maintain a memory usage for the pre-loading below the memory budget, wherein the one or more associated settings comprises at least one of: start in an online mode, start in an offline mode, or a number of web browser tabs with different web addresse; and pre-load the one or more applications. 13. The hardware memory storage device of claim 12 , wherein the program instructions, upon execution, further cause the IHS to: transmit user context information and system context information to a remote server configured to rank applications by priority, at least in part, based upon historical user context information and system context information. 14. The hardware memory storage device of claim 13 , wherein the program instructions, upon execution, further cause the IHS to: select a first highest ranked application with a first associated setting, a first responsiveness score, and a first memory utilization; and in response to a total memory utilization satisfying the memory budget, select a second highest ranked application with a second associated setting, a second responsiveness score, and a second memory utilization. 15. The hardware memory storage device of claim 12 , wherein the program instructions, upon execution, further cause the IHS to pre-load the one or more applications into a cache memory. 16. A method, comprising: receiving a ranked list of applications from a remote server, wherein the ranked list comprises, for each given application: (i) one or more associated settings, (ii) a responsiveness score representative of a metric inversely proportional to a time it takes to load the given application with the one or more associated settings, and (iii) a memory utilization value representative of an amount of memory it takes to load the given application with the one or more associated settings; selecting a memory budget for pre-loading one or more applications; prior to the pre-loading, selecting one or more applications from the ranked list to maintain a memory usage for the pre-loading below the memory budget and configuring each selected application with one or more associated settings to maintain the associated memory usage with the selected application; and pre-loading the one or more applications. 17. The method of claim 16 , further comprising: transmit user context information and system context information to a remote server configured to rank applications by priority, at least in part, based upon historical user context information and system context information. 18. The method of claim 16 , further comprising: selecting a first highest ranked application with a first associated setting, a first responsiveness score, and a first memory utilization; and in response to a total memory utilization satisfying the memory budget, selecting a second highest ranked application with a second associate
Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading · CPC title
Program loading or initiating (bootstrapping G06F9/4401; security arrangements for program loading or initiating G06F21/57) · CPC title
the resource being the memory · CPC title
with prefetch · CPC title
Configuring for program initiating, e.g. using registry, configuration files · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.