IP Library Granted Patent US 7,055,145
Granted Patent B2
US 7,055,145 · App. 10/283,997 · Granted May 30, 2006

Dynamic management of execute in place applications

Assignee: Intel Corporation
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 7,055,145
App. No.
10/283,997
Granted
May 30, 2006
Kind
B2
Abstract

Briefly, in accordance with one embodiment of the invention, applications may be dynamically reconfigured as execute-in-place applications or non-execute in place applications by monitoring application usage and configuring the applications based on the application usage data. Monitoring of application usage may be continuous, and the application usage data may be updated as application usage changes over time.

Claims (49)

1. An apparatus, comprising:

an application usage analyzer to analyze application usage and to store application usage data associated with an application configured as an execute-in-place application or a non-execute-in-place application; and

an application configurator to reconfigure said application as an execute-in-place application or as a non-execute-in-place application based upon the application usage data.

2. An apparatus as claimed in claim 1 , wherein said application usage analyzer is adapted to update the application usage data as applications are used.

3. An apparatus as claimed in claim 1 , wherein said application configurator generates a list of execute-in-place configured applications and compares the application usage data to the list of execute-in-place configured applications to determine which applications to configure as an execute-in-place application.

4. An apparatus as claimed in claim 1 , wherein said application configurator updates a list of execute-in-place configured applications when applications are reconfigured as execute-in-place applications or non-execute-in-place applications.

5. An apparatus as claimed in claim 1 , wherein execute-in-place applications are stored in primary storage, and non-execute-in-place applications are stored in secondary storage.

6. An apparatus as claimed in claim 1 , wherein execute-in-place applications are stored in a portion of primary storage used for execute-in-place applications, and non-execute-in-place applications are stored in a portion of primary storage used for non-execute-in-place applications.

7. An apparatus as claimed in claim 1 , wherein said application configurator reconfigures an execute-in-place application as a non-execute-in-place application based at least in part upon a reduced usage of the application.

8. An apparatus as claimed in claim 1 , wherein said application configurator reconfigures a non-execute-in-place applications as an execute-in-place application based at least in part upon an increased usage of the application.

9. An apparatus as claimed in claim 1 , wherein non-execute-in-place applications are stored in a compressed format.

10. A method, comprising:

gathering application usage data associated with one or more applications configured as either execute-in-place or non-execute-in-place; and

reconfiguring at least one of said one or more applications as execute-in-place or non-execute-in-place based upon the application usage data.

11. A method as claimed in claim 10 , further comprising storing the application usage data.

12. A method as claimed in claim 10 , further comprising updating the application usage data as the application usage data changes over time.

13. A method as claimed in claim 10 , further comprising updating the application usage data as the application usage data changes over time, and subsequently executing said configuring based upon the updated application usage data.

14. A method as claimed in claim 10 , further comprising providing a list of execute-in-place applications, and comparing the list of execute-in-place applications to the application usage data to determine whether applications should be reconfigured, and if so, rearranging one or more applications.

15. A method as claimed in claim 10 , further comprising moving an application reconfigured from execute-in-place to non-execute-in-place from primary storage to secondary storage.

16. A method as claimed in claim 10 , further comprising moving an application reconfigured from non-execute-in-place to execute-in-place from secondary storage to primary storage.

17. A method as claimed in claim 10 , wherein said gathering occurs continuously as applications are used.

18. A method as claimed in claim 10 , wherein said configuring occurs at predetermined intervals.

19. A method as claimed in claim 10 , wherein said configuring occurs to provide an optimal usage of memory.

20. A method as claimed in claim 10 , wherein said configuring occurs based on an amount of memory available to store execute-in-place applications.

21. An article, comprising a storage medium, said storage medium having stored thereon instructions, said instructions, when executed, resulting in configuration of applications as execute-in-place or non-execute-in-place by:

gathering application usage data associated with one or more applications configured as either execute-in-place or non-execute-in-place; and

reconfiguring at least one of said one or more applications as execute-in-place or non-execute-in-place based upon the application usage data.

22. An article as claimed in claim 21 , said instructions further resulting in storing the application usage data.

23. An article as claimed in claim 21 , said instructions further resulting in configuration of applications as execute-in-place or non-execute-in-place by updating the application usage data as the application usage data changes over time.

24. An article as claimed in claim 21 , said instructions further resulting in configuration of applications as execute-in-place or non-execute-in-place by updating the application usage data as the application usage data changes over time, and subsequently executing said configuring based upon the updated application usage data.

25. An article as claimed in claim 21 , said instructions further resulting in configuration of applications as execute-in-place or non-execute-in-place by providing a list of execute-in-place applications, and comparing the list of execute-in-place applications to the application usage data to determine whether applications should be reconfigured, and if so, rearranging one or more applications.

26. An article as claimed in claim 21 , said instructions further resulting in configuration of applications as execute-in-place or non-execute-in-place by moving an application reconfigured from execute-in-place to non-execute-in-place from primary storage to secondary storage.

27. An article as claimed in claim 21 , said instructions further resulting in configuration of applications as execute-in-place or non-execute-in-place by moving an application reconfigured from non-execute-in-place to execute-in-place from secondary storage to primary storage.

28. An article as claimed in claim 21 , wherein said gathering occurs continuously as applications are used.

29. An article as claimed in claim 21 , wherein said configuring occurs at predetermined intervals.

30. An article as claimed in claim 21 , wherein said configuring occurs to provide an optimal usage of memory.

31. An article as claimed in claim 21 , wherein said configuring occurs based on an amount of memory available to store execute-in-place applications.

32. An apparatus, comprising:

a cellular transceiver;

an application usage analyzer to analyze application usage and to store application usage data associated with an application configured as an execute-in-place application or a non-execute-in-place application; and

an application configurator to reconfigure said application as an execute-in-place application or as a non-execute-in-place application based upon the application usage data.

33. An apparatus as claimed in claim 32 , wherein said application usage analyzer updates the application usage data as applications are used.

34. An apparatus as claimed in claim 32 , wherein said application configurator generates a list of execute-in-place configured applications and compares the application usage data to the list of execute-in-place configured applications to determine which applications to configure as an execute-in-place application.

35. An apparatus as claimed in claim 32 , wherein said application configurator updates a list of execute-in-place configured applications when applications are reconfigured as execute-in-place applications or non-execute-in-place applications.

36. An apparatus as claimed in claim 32 , wherein execute-in-place applications are stored in primary storage, and non-execute-in-place applications are stored in secondary storage.

37. An apparatus as claimed in claim 32 , wherein execute-in-place applications are stored in a portion of primary storage used for execute-in-place applications, and non-execute-in-place applications are stored in a portion of primary storage used for non-execute-in-place applications.

38. An apparatus as claimed in claim 32 , wherein said application configurator reconfigures an execute-in-place application as a non-execute-in-place application based at least in part upon a reduced usage of the application.

39. An apparatus as claimed in claim 32 , wherein said application configurator reconfigures a non-execute-in-place applications as an execute-in-place application based at least in part upon an increased usage of the application.

40. An apparatus as claimed in claim 32 , wherein non-execute-in-place applications are stored in a compressed format.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 10, 2003
From: HATALKAR, ATUL N.
To: INTEL CORPORATION
Reel/Frame 013651/0737 →
Continuity (1)
Related Publication 20040088701A1 · May 6, 2004