Claims
- 1. A method comprising:
receiving a classification of applications comprising two or more classifications; determining nodes reachable from imports of a first order classification; regrouping into a first resource, nodes reachable from imports of the first order classification; and modifying control flow, so nodes remain reachable from imports of the first order classification.
- 2. The method of claim 1 further comprising:
determining nodes reachable from imports of a second order classification; except for nodes already regrouped in the first resource, regrouping into a second resource, nodes reachable from imports of the second order classification; and modifying control flow, so nodes remain reachable from imports of the second order classification, whether the nodes are regrouped in the first resource or the second resource.
- 3. The method of claim 2 further comprising:
determining nodes reachable from a third order classification; except for nodes already regrouped in the first or second resource, regrouping into a third resource, nodes reachable from imports of the third order classification; and modifying control flow, so nodes remain reachable from imports of the third order classification, whether the nodes are regrouped in the first, second, or third resource.
- 4. The method of claim 2 further comprising determining exports from resources that are not reachable from imports of the first or second order classification;
except for nodes already regrouped in the first or second resource, regrouping into a final resource, nodes reachable from determined exports; modifying control flow, so nodes reachable from determined exports remain reachable, whether the nodes are regrouped in the first, second, or final resource.
- 5. The method of claim 1 wherein the control flow modification comprises forwarder resources.
- 6. The method of claim 1 wherein the control flow modification comprises modifying imports.
- 7. The method of claim 2 wherein the imports comprise a reference to a resource not in an input universe.
- 8. The method of claim 4 wherein an export is referenced by an import inside the system and not inside an input universe.
- 9. A computer system comprising:
an application classifier; a reachable node identifier; a resource reformulator; and a dependency redirector.
- 10. The system of claim 9 wherein the application classifier classifies applications into plural classifications comprising one or more application per classification.
- 11. The system of claim 10 wherein the application classifications are received via an input file.
- 12. The system of claim 10 wherein the applications are classified via a graphical user interface.
- 13. The system of claim 9 wherein nodes are basic blocks.
- 14. The system of claim 9 wherein nodes are procedures.
- 15. The system of claim 13 wherein the reachable node identifier builds a graph of basic blocks reachable in the control flow, starting with an entry point in a resource identifiable from an import.
- 16. The system of claim 15 wherein the graph of reachable basic blocks comprise a new resource.
- 17. The system of claim 9 wherein the reachable node identifier builds graphs for nodes reachable from imports of a classification.
- 18. The system of claim 17 wherein the built graphs for nodes reachable from imports of the classification is used by the resource reformulator to create a new resource.
- 19. The system of claim 18 wherein the dependency redirector modifies control flow through the new resource so the nodes remain reachable in the same configuration as the built graphs.
- 20. A computer-readable medium having executable instructions for performing a method comprising:
receiving a classification of applications comprising two or more classifications; determining nodes reachable from imports of a first order classification; regrouping into a first resource, nodes reachable from imports of the first order classification; modifying control flow, so nodes remain reachable from imports of the first order classification; determining nodes reachable from imports of a second order classification; except for nodes already regrouped in the first resource, regrouping into a second resource, nodes reachable from imports of the second order classification; and modifying control flow, so nodes remain reachable from imports of 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; reformulating plural resources into new resources comprising,
regrouping nodes reachable from imports of first order classifications into a first order new resource for nodes not regrouped in the first order new resource; and regrouping nodes reachable from imports of second order classifications into a second order resource.
- 22. A computer-readable medium comprising:
a first resource; a second resource; a third resource; a first order application comprising imports reaching nodes of the first resource but not the second or third resource; a second order application comprising imports reaching nodes of the first and second resource but not the third resource; and a third order application comprising imports reaching the first, second and third resource.
RELATED APPLICATIONS
[0001] The present application is related to U.S. Patent Application entitled “Creating Resources of Nodes Reachable From Defined Entry Points,” Ser. No. ______ (Attorney Docket No. 3382-64712), filed on the same day as the present application, and assigned to the same assignee, is incorporated herein by reference.