Background applications in an operating system (OS) can be either running or sleeping. If a background application continues running without going to sleep or attempts to wake up with an unnecessarily high frequency, it needlessly consumes system resources, such as power, memory, etc., thus decreasing operational efficiency.
The techniques of this disclosure allocate each background application with a time budget proportional to the number of CPU cycles. The budget decreases with the use of CPU cycles by the background application until the application goes to sleep or runs out of budget. The budget for each background application is replenished over time by the OS, and any sleeping background application with a non-zero budget can be woken up by the OS.
Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 License.
Gokhale, Alhaad, "A budget-based policy for operating system scheduling of background tasks", Technical Disclosure Commons, (May 31, 2018)