Systems And Methods For Optimizing Perceived Software Application Load Delays

US2021342192A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2021342192-A1
Application numberUS-202016862199-A
CountryUS
Kind codeA1
Filing dateApr 29, 2020
Priority dateApr 29, 2020
Publication dateNov 4, 2021
Grant date

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 provided that may be implemented to pre-launch a given software application in a background state on an information handling system when the given application is predicted to be needed by a user of the information handling system. Using the disclosed systems and methods, the given software application may be pre-loaded into system memory and host execution space in a background state before the system user actually needs to use the given software application, and so that it is loaded and ready for foreground use when it is called for by the system user.

First claim

Opening claim text (preview).

What is claimed is: 1 . A method, comprising: operating an information handling system by executing an operating system (OS) and one or more foreground applications on a programmable integrated circuit of the information handling system; collecting input data from operation characteristics of the information handling system; determining if the collected input data indicates an upcoming need for one or more identified given applications that are not currently called for by a system user of the information handling system and that are not executing on a programmable integrated circuit of the information handling system; then pre-launching the one or more identified given applications as background applications executing on the programmable integrated circuit before the identified given applications are called for by the system user only if the collected input data indicates an upcoming need for the one or more identified given applications, the presence of the one or more pre-launched background applications being hidden from the system user and not accepting input from the system user; and then responding to a call from the system user for at least one of the one or more identified given applications by transferring the identified given application to be a foreground application executing on the programmable integrated circuit that is visible to the system user and that accepts input from the system user. 2 . The method of claim 1 , further comprising: collecting current resource usage data from operation characteristics of the information handling system while the one or more identified given applications are executing as pre-launched background applications on the programmable integrated circuit; determining if the collected current resource usage data exceeds one or more predefined corresponding resource utilization threshold values; and then terminating execution of at least one of the executing pre-launched background applications only if the collected current resource usage data exceeds the one or more predefined corresponding resource utilization threshold values to reduce the current usage of the one or more system resources so that the current usage of the one or more system resources no longer exceeds the one or more corresponding predefined resource utilization threshold values. 3 . The method of claim 1 , further comprising: pre-launching multiple identified given applications as multiple respective pre-launched background applications executing on the programmable integrated circuit before the multiple identified given applications are called for by the system user only if the collected input data indicates an upcoming need for the multiple identified given applications, the presence of the multiple pre-launched background applications being hidden from the system user and not accepting input from the system user; collecting current resource usage data from operation characteristics of the information handling system while the multiple identified given applications are executing as multiple respective pre-launched background applications on the programmable integrated circuit; determining if the collected current resource usage data exceeds one or more predefined corresponding resource utilization threshold values; and then selecting and terminating execution of only a first portion of the executing multiple pre-launched background applications only if the collected current resource usage data exceeds the one or more predefined corresponding resource utilization threshold values to reduce the current usage of the one or more system resources so that the current usage of the one or more system resources no longer exceeds the one or more corresponding predefined resource utilization threshold values while not terminating a remaining second portion of the executing multiple pre-launched background applications. 4 . The method of claim 3 , where the selecting and terminating execution of only a first portion of the executing multiple pre-launched background applications comprises selecting and terminating the first portion of the executing multiple pre-launched background applications according to a defined termination policy that includes at least one of terminating an executing pre-launched background application having a lower defined priority ranking before terminating one or more other executing pre-launched background application/s having a higher defined priority ranking, terminating an executing pre-launched background application that was pre-launched before one or more other executing pre-launched background application/s that were pre-launched later according to a first in-first out (FIFO) policy, or terminating an executing pre-launched background application first that exhibits the largest resource usage characteristics relative to other executing pre-launched background application/s. 5 . The method of claim 1 , where the collecting input data from operation characteristics of the information handling system comprises collecting data from the executing foreground applications and/or other processes executing on the programmable integrated circuit that are designated by a defined pre-launch policy as being indicative of system user behavior that is predictive of upcoming user need for one or more given application/s; and where the determining if the collected input data indicates an upcoming need for one or more identified given applications comprises applying pre-defined criteria of the defined pre-launch policy to the collected input data to determine if the collected data from the executing foreground applications and/or other processes executing on the programmable integrated circuit indicates an upcoming need for one or more identified given applications. 6 . The method of claim 1 , where the pre-launching of the one or more identified given applications as background applications executing on the programmable integrated circuit comprises determining a time to pre-launch the one or more identified given applications based on a defined pre-launch policy. 7 . The method of claim 1 , further comprising simultaneously executing an active primary desktop and an inactive virtual desktop on the programmable integrated circuit; where the pre-launching of the one or more identified given applications comprises pre-launching the one or more software applications as background applications within the inactive virtual desktop that are hidden from the system user and that do not accept input from the system user; and where the responding to the call from the system user for the at least one identified given application comprises transferring the at least one given application from the inactive virtual desktop to be a foreground application within the active primary desktop where it is visible to the system user and accepts input from the system user. 8 . The method of claim 1 , further comprising simultaneously executing a first active primary desktop and an inactive virtual desktop on the programmable integrated circuit; where the pre-launching of the one or more identified given applications comprises pre-launching the one or more software applications as background applications within the inactive virtual desktop that are hidden from the system user and that do not accept input from the system user; and where the responding to the call from the system user for the at least one identified given application comprises transferring the inactive virtual desktop to be a second active primary desktop that includes the at least one identified given application executing as a foreground application that is visible to the system user and that accepts input from the system user within the second active primary desktop. 9

Assignees

Inventors

Classifications

  • Task life-cycle, e.g. stopping, restarting, resuming execution (G06F9/4881 takes precedence) · CPC title

  • G06F9/4806Primary

    Task transfer initiation or dispatching · CPC title

  • Remote windowing, e.g. X-Window System, desktop virtualisation (protocols for virtual reality H04L67/131) · CPC title

  • Resource availability · CPC title

  • Execution arrangements for user interfaces · 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 US2021342192A1 cover?
Systems and methods are provided that may be implemented to pre-launch a given software application in a background state on an information handling system when the given application is predicted to be needed by a user of the information handling system. Using the disclosed systems and methods, the given software application may be pre-loaded into system memory and host execution space in a bac…
Who is the assignee on this patent?
Dell Products Lp
What technology area does this patent fall under?
Primary CPC classification G06F9/4806. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Nov 04 2021 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 6 related publications on this page (citations in our corpus or others sharing the same primary CPC).