IP Library › Granted Patent US 9,432,839
Granted Patent B2
US 9,432,839 · App. 14/503,253 · Granted Aug 30, 2016

Dynamic adjustment of mobile device based on thermal conditions

Inventors: Phillip Stanley-Marbell (San Francisco, CA); Gaurav Kapoor (Santa Clara, CA); Umesh S. Vaishampayan (Santa Clara, CA)
Assignee: APPLE INC.
H04W8/22G06F1/3206G06F1/329G06F9/542H04M1/72569
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,432,839
App. No.
14/503,253
Granted
Aug 30, 2016
Kind
B2
Abstract

In some implementations, a mobile device can be configured to monitor environmental, system and user events associated with the mobile device and/or a peer device. The occurrence of one or more events can trigger adjustments to system settings. The mobile device can be configured to keep frequently invoked applications up to date based on a forecast of predicted invocations by the user. In some implementations, the mobile device can receive push notifications associated with applications that indicate that new content is available for the applications to download. The mobile device can launch the applications associated with the push notifications in the background and download the new content. In some implementations, before running an application or communicating with a peer device, the mobile device can be configured to check energy and data budgets and environmental conditions of the mobile device and/or a peer device to ensure a high quality user experience.

Claims (53)

1. A method comprising:

receiving, at a thermal management daemon executing on a mobile device, a request to vote on allowing an event to occur that is associated with a specified value of an attribute, where the request is received at a first time;

requesting, from a sampling daemon executing on the mobile device, a peer forecast for the attribute during a time period of interest corresponding to the first time, where the peer forecast includes scores for each of a plurality of values associated with the attribute, the score for each of the plurality of values indicating the relative likelihood of each of the plurality values for the attribute occurring during the time period of interest;

receiving the peer forecast including the scores for each of the plurality of values, including the specified attribute value, associated with the attribute and predicted to occur near the first time;

voting to allow the event based on the score of the specified attribute value.

2. The method of claim 1 , further comprising:

determining a number of highest scored attribute values in the plurality of values;

voting to allow the event when the specified attribute value is included in the number of highest scored attribute values.

3. The method of claim 1 , further comprising:

voting to prevent the event when the specified attribute value is not included in the plurality of values.

4. The method of claim 1 , further comprising:

determining a number of lowest scored attribute values in the plurality of values;

voting to prevent the event when the specified attribute value is included in the number of lowest scored attribute values.

5. The method of claim 4 , further comprising:

determining the number of lowest scored attribute values based on a current operating temperature of the mobile device.

6. The method of claim 5 , further comprising:

determining the number of lowest scored attribute values based on where the current operating temperature is in a range of operating temperatures.

7. A non-transitory computer-readable medium including one or more sequences of instructions which, when executed by one or more processors, cause:

receiving, at a thermal management daemon executing on a mobile device, a request to vote on allowing an event to occur that is associated with a specified value of an attribute;

requesting, from a sampling daemon executing on the mobile device, a peer forecast for the attribute during a time period of interest corresponding to the first time, where the peer forecast includes scores for each of a plurality of values associated with the attribute, the score for each of the plurality of values indicating the relative likelihood of each of the plurality values for the attribute occurring during the time period of interest;

receiving the peer forecast including the scores for each of the plurality of values including the specified attribute value associated with the attribute and predicted to occur near the first time;

voting to allow the event based on the score of the specified attribute value.

8. The non-transitory computer-readable medium of claim 7 , further comprising:

determining a number of highest scored attribute values in the plurality of values;

voting to allow the event when the specified attribute value is included in the number of highest scored attribute values.

9. The non-transitory computer-readable medium of claim 7 , wherein the instructions cause:

voting to prevent the event when the specified attribute value is not included in the plurality of values.

10. The non-transitory computer-readable medium of claim 7 , wherein the instructions cause:

determining a number of lowest scored attribute values in the plurality of values;

voting to prevent the event when the specified attribute value is included in the number of lowest scored attribute values.

11. The non-transitory computer-readable medium of claim 10 , wherein the instructions cause:

determining the number of lowest scored attribute values based on a current operating temperature of the mobile device.

12. The non-transitory computer-readable medium of claim 11 , wherein the instructions cause:

determining the number of lowest scored attribute values based on where the current operating temperature is in a range of operating temperatures.

13. A system comprising:

one or more processors; and

a non-transitory computer-readable medium including one or more sequences of instructions which, when executed by one or more processors, cause:

receiving, at a thermal management daemon executing on a mobile device, a request to vote on allowing an event to occur that is associated with a specified value of an attribute, where the request is received at a first time;

requesting, from a sampling daemon executing on the mobile device, a peer forecast for the attribute during a time period of interest corresponding to the first time, where the peer forecast includes scores for each of a plurality of values associated with the attribute, the score for each of the plurality of values indicating the relative likelihood of each of the plurality values for the attribute occurring during the time period of interest;

receiving the peer forecast including the scores for each of the plurality of values, including the specified attribute value, associated with the attribute and predicted to occur near the first time;

voting to allow the event based on the score of the specified attribute value.

14. The system of claim 13 , further comprising:

determining a number of highest scored attribute values in the plurality of values;

voting to allow the event when the specified attribute value is included in the number of highest scored attribute values.

15. The system of claim 13 , wherein the instructions cause:

voting to prevent the event when the specified attribute value is not included in the plurality of values.

16. The system of claim 13 , wherein the instructions cause:

determining a number of lowest scored attribute values in the plurality of values;

voting to prevent the event when the specified attribute value is included in the number of lowest scored attribute values.

17. The system of claim 16 , wherein the instructions cause:

determining the number of lowest scored attribute values based on a current operating temperature of the mobile device.

18. The system of claim 17 , wherein the instructions cause:

determining the number of lowest scored attribute values based on where the current operating temperature is in a range of operating temperatures.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 13, 2015
From: KAPOOR, GAURAV
To: APPLE INC.
Reel/Frame 034963/0473 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 29, 2015
From: STANLEY-MARBELL, PHILLIP; VAISHAMPAYAN, UMESH S.
To: APPLE INC.
Reel/Frame 034848/0971 →
Continuity (2)
Provisional Application 62005964 · May 30, 2014
Related Publication 20150350885A1 · Dec 3, 2015