Patent ID: 11900154
Assignee: DELL PRODUCTS L.P.
Field: Computer technology (Electrical engineering)
Classification: CPC G | IPC G

Claim 0:
1. A system comprising:
one or more processors; and
computer storage media storing computer executable instructions which when executed implement a method for enabling Modern Standby for unsupported applications, the method comprising:
detecting that a first application has been loaded on a system;
determining that the first application is an unsupported application for the Modern Standby, wherein the unsupported application is an application that an operating system is configured to suspend during the Modern Standby;
in response to detecting that the first unsupported application has been loaded on the system, examining the first unsupported application to determine that the first unsupported application is capable of remaining active during the Modern Standby, wherein the first unsupported application is determined to be capable of remaining active during the Modern Standby in response to determining that the first unsupported application uses Application Programming interfaces (APIs) that are necessary to run properly during the Modern Standby;
in response to determining that the first unsupported application is capable of remaining active during the Modern Standby, adding the first unsupported application to a data structure that defines applications that will remain active when the system enters the Modern Standby;
detecting that a second application has been loaded on the system;
determining that the second application is an unsupported application for the Modern Standby;
in response to detecting that the second unsupported application has been loaded on the system, examining the second unsupported application to determine that the second unsupported application is not capable of remaining active during the Modern Standby, wherein the second unsupported application is determined to not be capable of remaining active during the Modern Standby in response to determining that the second unsupported application does not use the APIs that are necessary to run properly during the Modern Standby;
in response to determining that the second unsupported application is not capable of remaining active during the Modern Standby, adding the second unsupported application to a data structure that defines applications that will be suspended when the system enters the Modern Standby;
entering the Modern Standby;
accessing the data structure that defines applications that remain active during the Modern Standby to identify the first unsupported application;
in response to identifying the first unsupported application in the data structure that defines applications that remain active during the Modern Standby, foregoing suspension of the first unsupported application and continuing to execute the first unsupported application during the Modern Standby;
accessing the data structure that defines applications that will be suspended when the system enters the Modern Standby to identify the second unsupported application;
in response to identifying the second unsupported application in the data structure that defines applications that will be suspended when the system enters the Modern Standby, suspending the second unsupported application during the Modern Standby.