US2017286072A1PendingUtilityA1

Custom class library generation method and apparatus

Assignee: INTEL CORPPriority: Sep 10, 2014Filed: Apr 11, 2017Published: Oct 5, 2017
Est. expirySep 10, 2034(~8.1 yrs left)· nominal 20-yr term from priority
G06F 8/63G06F 8/36G06F 8/427G06F 8/315G06F 9/44521G06F 8/31
52
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Apparatuses, methods and storage media associated with generating a custom class library are disclosed herein. In embodiments, an apparatus may include an analyzer configured to receive a workload for a device and a class library used by the workload, analyze the workload and class library, identify one or more workload full API call chains, and generate information about the one or more workload full API call chains. Further, the apparatus may include a generator to generate from the class library, a custom class library for the workload that is smaller than the class library, based at least in part on the one or more workload full API call chains. Other embodiments may be disclosed or claimed.

Claims

exact text as granted — not AI-modified
1 . An apparatus for generating a custom class library for a device, comprising:
 one or more processors; and   an analyzer to be operated by the one or more processors to receive a workload for the device and a class library used by the workload, analyze the workload and the class library, identify one or more workload full application programming interface, API, call chains that include direct calls from the workload to the class library, and subsequent calls within the class library resulted from the direct calls from the workload to the class library, and generate information about the one or more workload full API call chains.   
     
     
         2 . The apparatus of  claim 1 , wherein the analyzer is to parse the class library, and based on a result of the parsing, generate connectivity information that describes a calling relationship between each class or API in the class library. 
     
     
         3 . The apparatus of  claim 2 , wherein the analyzer is to further generate, based on the result of the parsing, an API information table that stores, for each API, a unique identifier of the API, a prototype of the API having a return value and one or more parameters, and the API's containing class identifier. 
     
     
         4 . The apparatus of  claim 2 , wherein the analyzer is to further generate, based on the result of the parsing, a method invoking table that stores, for each API, one or more method identifiers identifying one or more methods directly invoked by the API. 
     
     
         5 . The apparatus of  claim 2 , wherein the analyzer is to further generate, based on the result of the parsing, a field invoking table that stores, for each API, one or more field identifiers identifying one or more fields invoked by the API. 
     
     
         6 . The apparatus of  claim 1 , wherein the analyzer is to parse the workload, and based on a result of the parsing of the workload, generate one or more records of API invocation of the workload or the class library. 
     
     
         7 . The apparatus of  claim 6 , wherein the analyzer is to identify the one or more workload full API call chains, based at least in part on the one or more records of API invocation of the workload or the class library, and the connectivity information that describes the calling relationship between each class or API in the class library. 
     
     
         8 . The apparatus of  claim 1 , further comprising a generator to be operated by the one or more processors to generate from the class library, a custom class library for the workload that is smaller than the class library, based at least in part on the one or more workload full API call chains. 
     
     
         9 . The apparatus of  claim 8 , wherein the class library comprises a Java® Virtual Machine, JVM, class library. 
     
     
         10 . The apparatus of  claim 8 , wherein the workload comprises a workload for an Internet of Things (IoT) device. 
     
     
         11 . A method for generating a custom class library for a device, comprising:
 receiving, by a computing device, a workload for the device and a class library used by the workload;   analyzing, by the computing device, the workload and the class library to identify one or more workload full application programming interface, API, call chains that include direct calls from the workload to the class library and subsequent calls within the class library resulted from the direct calls from the workload to the class library; and   generating, by the computing device, information about the one or more workload full API call chains.   
     
     
         12 . The method of  claim 11 , wherein analyzing comprises parsing the class library, and based on a result of the parsing, generating connectivity information that describes a calling relationship between each class or API in the class library. 
     
     
         13 . The method of  claim 12 , wherein analyzing comprises generating, based on the result of the parsing, an API information table that stores for each API, a unique identifier of the API, a prototype of the API having a return value and one or more parameters, and the API's containing class identifier. 
     
     
         14 . The method of  claim 12 , wherein analyzing comprises generating, based on the result of the parsing, a method invoking table that stores for each API, one or more method identifiers identifying one or more methods directly invoked by the API. 
     
     
         15 . The method of  claim 12 , wherein analyzing comprises generating, based on the result of the parsing, a field invoking table that stores for each API, one or more field identifiers identifying one or more fields invoked by the API. 
     
     
         16 . The method of  claim 11 , wherein analyzing comprises parsing the workload, and based on a result of the parsing of the workload, generating one or more records of API invocation of the workload or the class library. 
     
     
         17 . The method of  claim 16 , wherein analyzing comprises identifying the one or more workload full API call chains, based at least in part on the one or more records of API invocation of the workload or the class library and the connectivity information that describes the calling relationship between each class or API in the class library. 
     
     
         18 . The method of  claim 11 , further comprising:
 generating from the class library, by the computing device, a custom class library for the workload that is smaller than the class library, based at least in part on the one or more workload full API call chains.   
     
     
         19 . (canceled) 
     
     
         20 . (canceled) 
     
     
         21 . At least one storage medium comprising a plurality of instructions to cause an apparatus, in response to execution of the instructions by the apparatus, to:
 receive a worklaod for the device and a class library used by the workload;   analyze the workload and the class library, identify one of more workload full application programming interface, API, call chains that include directs calls from the workload to the class library, and subsequent calls within the class library resulted from the direct calls from the workload to the class library; and   generate information about the one or more workload full API call chains.   
     
     
         22 . (canceled) 
     
     
         23 . (canceled) 
     
     
         24 . (canceled) 
     
     
         25 . (canceled) 
     
     
         26 . The computer-readable storage medium of  claim 19 , wherein to analyze is to parse the class library, and based on a result of the parsing, generate connectivity information that describes a calling relationship between each class or API in the class library. 
     
     
         27 . The computer-readable storage medium of  claim 26 , wherein to analyze is to further generate, based on the result of the parsing, an API information table that stores for each API, a unique identifier of the API, a prototype of the API having a return value and one or more parameters, and the API's containing class identifier. 
     
     
         28 . The computer-readable storage medium of  claim 26 , wherein to analyze is to further generate, based on the result of the parsing, a method invoking table that stores for each API, one or more method identifiers identifying one or more methods directly invoked by the API. 
     
     
         29 . The computer-readable storage medium  26 , wherein to analyze is to further generate, based on the result of the parsing, a field invoking table that stores for each API, one or more field identifiers identifying one or more fields invoked by the API. 
     
     
         30 . The computer-readable storage medium  19 , wherein to analyze is to parse the workload, and based on a result of the parsing of the workload, generate one or more records of API invocation of the workload or the class library. 
     
     
         31 . The computer-readable storage medium of  claim 19 , wherein the apparatus is further caused to generate from the class library, a custom class library for the workload that is smaller than the class library, based at least in part on the one or more workload full API call chains.

Join the waitlist — get patent alerts

Track US2017286072A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.