Classifying software and reformulating resources according to classifications
First Claim
Patent Images
1. A method comprising:
- receiving a classification of applications comprising two or more classifications, each classification comprising one or more applications;
determining nodes reachable from imports of applications contained in a first order classification by analyzing imports in applications contained in the first order classification to determine which nodes are reachable from those imports;
regrouping, into a first resource, nodes reachable from imports of applications contained in the first order classification; and
modifying control flow of the applications in the first order classification, so nodes remain reachable from imports of applications contained in the first order classification.
2 Assignments
0 Petitions
Accused Products
Abstract
Historically, resources (e.g., dynamic link libraries) were organized based on factors including the expertise of development teams. Unfortunately, this creates shared resources of much greater functionality than required by any one client application. By reformulating shared resources according to nodes reachable by classified applications, reformulated resources reduce the over-inclusive nature of shared resources formed based on the expertise of development teams. Further, layering resources for lower order classified applications also reduces memory requirements.
-
Citations
21 Claims
-
1. A method comprising:
-
receiving a classification of applications comprising two or more classifications, each classification comprising one or more applications; determining nodes reachable from imports of applications contained in a first order classification by analyzing imports in applications contained in the first order classification to determine which nodes are reachable from those imports; regrouping, into a first resource, nodes reachable from imports of applications contained in the first order classification; and modifying control flow of the applications in the first order classification, so nodes remain reachable from imports of applications contained in the first order classification. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computer system, comprising:
-
at least one processing unit and system memory, the memory containing computer-executable instructions, which, when executed by the processing unit, cause the processing unit to perform actions of; an application classifier configured to classify applications into plural classifications; a reachable node identifier configured to analyze applications to identify nodes reachable from one or more imports of analyzed applications; a resource reformulator configured to create one or more new resources based on nodes identified by the reachable node identifier; and a dependency redirector configured to modify control flow through the one or more new resources so the identified nodes remain reachable. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A computer-readable medium having executable instructions for performing a method comprising:
-
receiving a classification of applications comprising two or more classifications, each classification containing at least one application; determining nodes reachable from imports of applications contained in a first order classification; regrouping into a first resource, nodes reachable from imports of applications contained in the first order classification; modifying control flow, so nodes remain reachable from imports of applications contained in the first order classification; determining nodes reachable from imports of applications contained in a second order classification; except for nodes already regrouped in the first resource, regrouping into a second resource, nodes reachable from imports of applications contained in the second order classification; and modifying control flow, so nodes remain reachable from imports of applications contained in the second order classification, whether the nodes are regrouped in the first resource or the second resource.
-
-
21. A method of reformulating shared resources:
-
receiving an input comprising classified applications and plural resources; and
reformulating plural resources into new resources comprising;regrouping nodes reachable from imports of application contained in first order classifications into a first order new resource; and for nodes not regrouped in the first order new resource, regrouping nodes reachable from imports of applications contained in second order classifications into a second order resource.
-
Specification