EXTRACTING AND COLLECTING PLATFORM USE DATA
First Claim
1. A computer-readable storage medium comprising computer-executable modules, each module, when executed, configured to perform a respective function, the modules comprising:
- an agent module configured to obtain a manifest of components of an operating system;
a logging module configured to identify calls to any of the components in the manifest;
a report generation module configured to generate a report of the identified calls; and
a report delivery module configured to transmit the report over a network to a server.
2 Assignments
0 Petitions
Accused Products
Abstract
A system for reporting information about how selected components of an operating system are used by applications on a computing device. A manifest of components is provided from a management server to a computing device. The manifest specifies components of the operating system for which usage information is to be collected. The computing device surveys applications for calls to the components specified in the manifest. Surveys may be performed by static scanning and/or dynamic monitoring. In static scanning, application files are scanned for keyword strings specified in the manifest. Keyword string matches are recorded to a log file. In dynamic monitoring, calls from executing applications to components specified by the manifest are identified and logged. A report is generated from the log and sent to the management server. The management server then aggregates and analyzes reports from multiple computing devices to enable developers to assess how the components are being used.
88 Citations
20 Claims
-
1. A computer-readable storage medium comprising computer-executable modules, each module, when executed, configured to perform a respective function, the modules comprising:
-
an agent module configured to obtain a manifest of components of an operating system; a logging module configured to identify calls to any of the components in the manifest; a report generation module configured to generate a report of the identified calls; and a report delivery module configured to transmit the report over a network to a server. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method comprising acts of:
-
(a) downloading data specifying one or more components of an operating system to a computing device; (b) determining a program to be surveyed; (c) comparing a call from said program to the data and, when the call is to a component among the one or more specified components, recording an indication of use of said component; and (d) sending a report to a server, the report comprising information characterizing the recorded indication of use. - View Dependent Claims (10, 11, 12, 13, 14, 15)
-
-
16. A computing device running an operating system, the computing device comprising:
-
a computer-readable storage medium to store a manifest and a plurality of applications including a first application and a second application, each application having computer-executable instructions; a processor configured to execute the first application; a dynamic monitoring module configured to detect, during execution of the first application, a call from the first application to a component among a plurality of components indexed by the manifest and record a first log entry identifying the first application and the component; a static scanning module configured to scan a file associated with the second application for a keyword string contained in the manifest and, when the keyword string is identified in the file, record a second log entry; an agent module to generate at least one report using the first and second log entry; and a network interface configured to receive the manifest from a server and to transmit the at least one report to the server. - View Dependent Claims (17, 18, 19, 20)
-
Specification