Claims
- 1. A method, comprising:
reading an object module and identifying a number of imported symbols; identifying a needed component based on at least one of the number of imported symbols; and identifying the needed component as a required component when the needed component is not identified as present in an operating system.
- 2. The method of claim 1, wherein the step of identifying the needed component includes:
identifying a component that exports the at least one of the number of imported symbols.
- 3. The method of claim 2 wherein the step of identifying the component that exports the at least one of the number of imported symbols is performed by parsing a component cross reference data structure.
- 4. The method of claim 1, wherein the operating system is defined in a bootable project.
- 5. The method of claim 1, further comprising:
providing a user interface that displays an indication of the required component.
- 6. A method, comprising.
reading a project data structure identifying a number of modules; identifying a number of imported symbols used in the number of modules; identifying at least one needed component based on at least one of the number of imported symbols; identifying the at least one needed component as a respective at least one required component where the at least one needed component is not identified as present in an operating system.
- 7. The method of claim 6, further comprising:
storing representations of the number of imported symbols in a module cross reference data structure; wherein the step of identifying the at least one needed component based on at least one of the number of imported symbols uses the module cross reference data structure.
- 8. The method of claim 7, wherein the representations of the number of imported symbols include symbol names and attributes, and wherein the attributes include whether the symbol is imported.
- 9. The method of claim 6, wherein the project data structure defines a bootable application, and wherein the operating system is defined in the project data structure.
- 10. The method of claim 6, wherein the components include operating system components.
- 11. The method of claim 6, further comprising:
reading at least one component description data structure for available components; and populating a component cross reference data structure with descriptions of the available components; wherein the step of identifying at least one needed component includes parsing the descriptions of the available components in the component cross reference data structure.
- 12. The method of claim 11, wherein the at least one component description data structure is a file.
- 13. The method of claim 11, wherein the descriptions of available components include at least one of component names, module names, parameters, parameter initial values, initialization order, component grouping, selectivity and symbols.
- 14. The method of claim 11, further comprising:
identifying at least one dependency component that is required by the at least one required component.
- 15. The method of claim 14, wherein the step of identifying the at least one dependency component is performed using the component cross reference data structure and determining a dependency between the at least one required component and the at least one dependency component.
- 16. The method of claim 15, further comprising:
displaying identifiers for the at least one required component and at least one dependency component using a user interface.
- 17. The method of claim 6, further comprising:
displaying identifiers for the at least one required component using a user interface.
- 18. The method of claim 17, further comprising:
requesting acknowledgement prior to adding the at least one required component to the operating system; and adding the at least one required component to the operating system.
- 19. The method of claim 6, wherein the project data structure is a file.
- 20. The method of claim 6, further comprising:
identifying an unneeded present component of the operating system where a present component of the operating system is not included in the at least one needed component.
- 21. The method of claim 20, wherein the step of identifying the unneeded present component includes
identifying a precious set of components that includes the at least one needed component, and determining whether the present component of the operating system is not included in the precious set of components.
- 22. The method of claim 21, further comprising:
displaying the unneeded present component in a user interface.
- 23. A method, comprising:
providing a component data file containing descriptions of a number of available operating system components; parsing the descriptions of the number of available operating system components to generate a component data structure; identifying a number of present components in an operating system; identifying at least one of a number of imported symbols and a number of exported symbols present in a number of object modules; storing symbol names and attributes of the number of imported symbols and number of exported symbols in a module data structure, wherein the attributes include whether the symbol is imported or exported; determining a number of required components, including the steps of:
identifying a number of needed components based on the symbol names and attributes and the descriptions of the number of operating system components, and identifying those of the number of needed components that are not included in the number of present components; and displaying the number of required components in a graphical user interface.
- 24. A system, comprising:
component descriptions of a number of operating system components; an object module examination utility configured to receive a number of object modules and output symbol names and attributes for a number of imported symbols in the number of object modules; and a project analysis utility configured to receive the symbol names and attributes and component descriptions and identify a number of needed components based on the symbol names and attributes and the component descriptions.
- 25. The system of claim 24; wherein the project analysis utility is configured to identify a number of required components based on whether any of the number of needed components are identified as present in an operating system.
- 26. The system of claim 25, further comprising:
a user interface coupled to the project analysis utility; wherein the user interface is configured to display representations of the number of required components.
- 27. The system of claim 26, wherein the user interface is a graphical user interface and includes a display having a box that is configured to display the representations of the number of required components.
- 28. The system of claim 25, further comprising:
a dependency management tool configured to identify whether any of the number of required components requires any of the available components and output a number of dependency components.
- 29. The system of claim 28, further comprising:
a user interface coupled to the project analysis utility; wherein the user interface is configured to display representations of the number of required components and the number of dependency components.
- 30. The system of claim 24, further comprising:
a module parser coupled to the object module examination utility to receive the symbol names and attributes and populate a module data structure with the symbol names and attributes; wherein the project analysis utility is configured to receive the symbol names and attributes from the module data structure.
- 31. The system of claim 30, wherein the module data structure is an mxrDoc database.
- 32. The system of claim 24, further comprising:
a component parser configured to receive the component descriptions and populate a component data structure with the component descriptions. wherein the project analysis utility is configured to receive the component descriptions from the component data structure.
- 33. The system of claim 32, wherein the component data structure is a cxrDoc database.
- 34. The system of claim 32, wherein the component data structure includes an dependency indication of at least one of the number of components that is required by another of the number of components.
- 35. The system of claim 34, wherein the dependency indication includes an “include when” command.
- 36. The system of claim 24, further comprising:
a compiler configured to receive a number of source code modules and output a number of object modules based on the number of source code modules.
- 37. The system of claim 24, wherein the component descriptions are stored in a number of component description files.
- 38. A system, comprising:
a number of operating system components; a compiler configured to receive a number of source code modules and output a number of object modules based on the number of source code modules; an object module examination utility configured to receive the number of object modules and output symbol names and attributes for at least one of a number of imported symbols and a number of exported symbols in the number of object modules; a module parser coupled to the object module examination utility to receive the symbol names and attributes and populate a module data structure with the symbol names and attributes; a component parser configured to receive descriptions of the number of operating system components; a component data structure coupled to the component parser to receive the descriptions of the number of operating system components; a project analysis utility coupled to the component data structure and module data structure; and a graphical user interface coupled to the project analysis utility; wherein the project analysis utility is configured to determine a number of needed components based on the module data structure and component data structure, and wherein the graphical user interface is configured to display representations of the number of needed components that have been determined to export at least one of the number of imported symbols.
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application claims the benefit of U.S. Provisional Application No. 60/184,856, filed Feb. 25, 2000.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60184856 |
Feb 2000 |
US |