IP Library Granted Patent US 9,274,816
Granted Patent B2
US 9,274,816 · App. 13/723,495 · Granted Mar 1, 2016

User driven emulation of applications

Inventor: Igor Muttik (Herts, GB)
Assignee: McAfee, Inc.
G06F9/455G06F8/60G06F11/30
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,274,816
App. No.
13/723,495
Granted
Mar 1, 2016
Kind
B2
Abstract

Systems and methods allow a user to select one or more applications that are intended to be downloaded to a device (e.g., phone, tablet, PC) and create an emulation environment for testing aspects of the one or more applications prior to download. The emulation environment can be virtual (via emulation or virtual machine) or instrumented by remotely controlling actual hardware. Metrics collected from the emulation environment can include security and usability related aspects of the applications. Interaction between the applications themselves, the applications and other resources, and the user and the applications (e.g., configuration preferences, usage patterns) can be monitored by systems facilitating hosting of the emulation environment. For example, collected metrics can be used to create a measure for security, reputation, user-preference, etc. regarding the applications. Metrics can be shared amongst other potential users to assist in their purchase or usage of the applications.

Claims (63)

1. An emulation server comprising:

one or more processors;

one or more network communication interfaces; and

a memory communicatively coupled to the one or more processors, wherein the memory stores instructions to cause the one or more processors to:

provide an interface allowing for a connection from one or more users via the one or more network communication interfaces;

receive a first indication of an end user identity associated with an end user device;

receive a second indication of an application to be downloaded to the end user device;

instantiate an emulation environment using the emulation server based at least in part on the first and second indication;

receive information from the end user device to interact with the emulation environment;

monitor interaction activity and application activity within the emulation environment to create monitored information;

collect user reputation metrics for the to be downloaded application using the monitored information; wherein the reputation metrics includes information of one or more properties determined by monitoring the interaction activity and the application activity in the emulation environment;

configure the emulation environment responsive to user input;

save the configured emulation environment; and

calculate a reputation score for the to be downloaded application responsive to saving the configured emulation environment;

wherein the reputation score is calculated by combining the reputation metrics with a plurality of additional reputation metrics, each additional reputation metric being determined by monitoring interaction activity and application activity of a plurality of additional users and usage patterns.

2. The emulation server of claim 1 , wherein the instructions to cause the one or more processors to instantiate the emulation environment comprise instructions to cause the one or more processors to access a previously configured emulation environment.

3. The emulation server of claim 1 , wherein the instructions to cause the one or more processors to instantiate the emulation environment comprise instructions to cause the one or more processors to access a previously configured emulation environment.

4. The emulation server of claim 3 , wherein the previously configured emulation environment comprises a previously configured emulation environment associated with the end user identity.

5. The emulation server of claim 1 , wherein the interface allowing for the connection comprises a web based interface.

6. The emulation server of claim 1 , wherein the emulation environment comprises a virtual environment.

7. The emulation server of claim 1 , wherein the emulation environment comprises an instrumented environment.

8. The emulation server of claim 1 , wherein the end user device comprises a device selected from a group consisting of a personal computer, a tablet computer, a personal digital assistant, a smart phone, and a television.

9. The emulation server of claim 1 , wherein the monitored information comprises information pertaining to a metric, the metric selected from a group consisting of a heating profile metric and a battery consumption metric.

10. The emulation server of claim 1 , wherein the monitored information comprises information pertaining to level of annoyance, wherein the level of annoyance pertains to pop-ups or adware windows.

11. The emulation server of claim 1 , wherein the information received from the end user device comprises information to configure the to be downloaded application.

12. The emulation server of claim 1 , wherein calculating a reputation score comprises determining a rating for the to be downloaded application from a graduated scale of rating values.

13. A non-transitory computer readable medium comprising instructions stored thereon to cause one or more processors to:

provide an interface allowing for a connection from one or more users via one or more network communication interfaces;

receive a first indication of an end user identity associated with an end user device;

receive a second indication of an application to be downloaded to the end user device;

instantiate an emulation environment using an emulation server, the emulation environment based at least in part on the first and second indication;

receive information from the end user device to interact with the emulation environment;

monitor interaction activity and application activity within the emulation environment to create monitored information;

collect user reputation metrics for the to be downloaded application using the monitored information; wherein the reputation metrics includes information of one or more properties determined by monitoring the interaction activity and the application activity in the emulation environment;

configure the emulation environment responsive to user input;

save the configured emulation environment; and

calculate a reputation score for the to be downloaded application responsive to saving the configured emulation environment;

wherein the reputation score is calculated by combining the reputation metrics with a plurality of additional reputation metrics, each additional reputation metric being determined by monitoring interaction activity and application activity of a plurality of additional users and usage patterns.

14. The non-transitory computer readable medium of claim 13 , wherein the instructions to cause the one or more processors to instantiate the emulation environment comprise instructions to cause the one or more processors to access a previously configured emulation environment.

15. The non-transitory computer readable medium of claim 13 , wherein the instructions to cause the one or more processors to instantiate the emulation environment comprise instructions to cause the one or more processors to access a previously configured emulation environment.

16. The non-transitory computer readable medium of claim 15 , wherein the previously configured emulation environment comprises a previously configured emulation environment associated with the end user identity.

17. The non-transitory computer readable medium of claim 13 , wherein the interface allowing for the connection comprises a web based interface.

18. The non-transitory computer readable medium of claim 13 , wherein the emulation environment comprises a virtual environment.

19. The non-transitory computer readable medium of claim 13 , wherein the emulation environment comprises an instrumented environment.

20. A method of operating a computer system, the method comprising:

providing an interface allowing for a connection to the computer system from one or more users via one or more network communication interfaces;

receiving a first indication of an end user identity associated with an end user device;

receiving a second indication of an application to be downloaded to the end user device;

instantiating an emulation environment based at least in part on the first and second indication, the emulation environment hosted on the computer system;

receiving information from the end user device to interact with the emulation environment;

monitoring interaction activity from the end user device and application activity within the emulation environment to create monitored information;

collecting user reputation metrics for the to be downloaded application using the monitored information; wherein the reputation metrics includes information of one or more properties determined by monitoring the interaction activity and the application activity in the emulation environment;

configuring the emulation environment responsive to user input;

saving the configured emulation environment; and

calculating a reputation score for the to be downloaded application responsive to saving the configured emulation environment;

wherein the reputation score is calculated by combining the reputation metrics with a plurality of additional reputation metrics, each additional reputation metric being determined by monitoring interaction activity and application activity of a plurality of additional users and usage patterns.

21. The method of operating a computer system of claim 20 , wherein instantiating the emulation environment comprises accessing a previously configured emulation environment.

22. The method of operating a computer system of claim 20 , wherein instantiating the emulation environment comprises accessing a previously configured emulation environment.

23. The method of operating a computer system of claim 22 , wherein the previously configured emulation environment comprises a previously configured emulation environment associated with the end user identity.

24. The method of operating a computer system of claim 20 , wherein the interface allowing for the connection comprises a web based interface.

25. The method of operating a computer system of claim 20 , wherein the emulation environment comprises a virtual environment.

26. The method of operating a computer system of claim 20 , wherein the emulation environment comprises an instrumented environment.

27. The method of operating a computer system of claim 20 , wherein the monitored information comprises information pertaining to a metric, the metric selected from a group consisting of a heating profile metric and a battery consumption metric.

Assignments (10)
CORRECTIVE ASSIGNMENT TO CORRECT THE THE PATENT TITLES AND REMOVE DUPLICATES IN THE SCHEDULE PREVIOUSLY RECORDED AT REEL: 059354 FRAME: 0335. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jun 23, 2022
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 060792/0307 →
SECURITY INTEREST Recorded Mar 3, 2022
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT AND COLLATERAL AGENT
Reel/Frame 059354/0335 →
RELEASE OF INTELLECTUAL PROPERTY COLLATERAL - REEL/FRAME 045056/0676 Recorded Mar 2, 2022
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: MCAFEE, LLC
Reel/Frame 059354/0213 →
RELEASE OF INTELLECTUAL PROPERTY COLLATERAL - REEL/FRAME 045055/0786 Recorded Oct 26, 2020
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: MCAFEE, LLC
Reel/Frame 054238/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045056 FRAME 0676. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Oct 22, 2020
From: MCAFEE, LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 054206/0593 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045055 FRAME 786. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Oct 22, 2020
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 055854/0047 →
SECURITY INTEREST Recorded Jan 12, 2018
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 045055/0786 →
SECURITY INTEREST Recorded Jan 12, 2018
From: MCAFEE, LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 045056/0676 →
CHANGE OF NAME AND ENTITY CONVERSION Recorded Aug 24, 2017
From: MCAFEE, INC.
To: MCAFEE, LLC
Reel/Frame 043665/0918 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 8, 2013
From: MUTTIK, IGOR
To: MCAFEE, INC.
Reel/Frame 029587/0367 →
Continuity (1)
Related Publication 20140180666A1 · Jun 26, 2014