Patent ID: 8645736

Claim:
A computer-implemented method comprising: gathering, by a computing device, a plurality of operating statistics for the computing device; analyzing the plurality of operating statistics; automatically scheduling, based on the analysis of the plurality of operating statistics, an update-process trigger for the computing device, wherein the update-process trigger is scheduled to occur at a time just prior to an anticipated use of the computing device and occurrence of the update-process trigger causes the computing device to: transition from a low power state to a first active power state; and perform an update process for the computing device; initiating, after scheduling the update-process trigger, a transition of the computing device from a second active power state to the low power state; and in response to occurrence of the update-process trigger: initiating the transition of the computing device from the low power state to the first active power state; and performing the update process after the transition from the low power state to the first active power state is complete, the update process including: sending, to a plurality of servers, respective update requests; receiving, from the plurality of servers, respective responses to the update requests, each response indicating a respective quantity of available update information for the computing device; and deciding, based on the indication of available update information, whether to perform one or more updates includes: determining a total quantity of available update information data based on the respective quantities of available update information data; and if the total quantity of available update information data is equal to or above a threshold amount, the update process further includes: requesting the available update information from the plurality of servers; receiving the available update information from the plurality of servers; and updating an operating state of the computing device using the received update information.