Device for managing software configurations in parallel in a network
First Claim
1. Apparatus for managing computer software comprising:
- a plurality of processors loosely connected in a network; and
configuration management means, executable on at least one of the processors, for building from a configuration model a desired software system having a multiplicity of components including independent components, the configuration management means determining which components are to be compiled and assigning each such to-be-compiled component to a processor to compile the component, the configuration management means assigning the independent components to different processors such that components in the desired software system which are independent of each other are automatically compiled in parallel by different processors to minimize total compilation time of the desired software system;
the components of the desired software system being of user designated versions.
2 Assignments
0 Petitions
Accused Products
Abstract
A software configuration management system that uses a network computing environment to build large software systems in parallel. A configuration manager assigns the compilation of buildable components of a software system to different processors in the network. Buildable components are assigned in order, according to dependencies between components, independent components taking precedence. Processors are chosen according to the amount of idle time during a sampled time segment. A display provides processor compilation status messages for each compilation discrete from status messages of other compilations. A continuously updated overall status report of the system being built is simultaneously displayed with, but segregated from, the compilation status messages.
118 Citations
31 Claims
-
1. Apparatus for managing computer software comprising:
-
a plurality of processors loosely connected in a network; and configuration management means, executable on at least one of the processors, for building from a configuration model a desired software system having a multiplicity of components including independent components, the configuration management means determining which components are to be compiled and assigning each such to-be-compiled component to a processor to compile the component, the configuration management means assigning the independent components to different processors such that components in the desired software system which are independent of each other are automatically compiled in parallel by different processors to minimize total compilation time of the desired software system; the components of the desired software system being of user designated versions. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. Apparatus for managing computer software comprising:
a plurality of processors capable of processing compilations of software components, one of said processors having a compiler within a certain local file system, the one processor being defined as a reference processor for the other processors, such that each of the other processors makes reference to the certain local file system of the one processor to compile a respective component, the processors compiling respective components in parallel while making reference to the certain local file system of the reference processor. - View Dependent Claims (16)
-
17. Apparatus for managing computer software comprising:
-
a plurality of processors, each processor having access to files of the other processors; configuration management means for automatically compiling components of a software system in parallel utilizing the processors, the compiling in parallel minimizing total compilation time of the components of the software system, said means having; means for evaluating idle status of the processors, the evaluating means providing an idle status evaluation; a scheduler for selecting a processor for a compilation based on the idle status evaluation; and means for specifying to the selected processor a processor from whose files a compiler is to be used for the compilation. - View Dependent Claims (18, 19, 20, 21)
-
-
22. A computer display comprising:
-
a first screen section displaying compilation status messages from different processors compiling in parallel different modules of a desired software system for parallel building of the system, compilation status messages of each compilation by each processor being displayed independently of messages of other compilations; and a second screen section displaying a summary of a current overall status of the parallel building of the system including status of compilations associated with the processors, the first and second screen sections being displayed simultaneously. - View Dependent Claims (23, 24)
-
-
25. Method of building a software system using computer means comprising the steps of:
-
providing a plurality of processors loosely connected in a network; and executing configuration management means on one of the processors, the configuration management means building from a configuration model a software system having a multiplicity of components including independent components, the configuration management means determining which components of the software system are to be currently compiled and assigning each to-be-compiled component to a processor for compiling, the configuration management means assigning independent components to different processors such that components of the software system are automatically compiled in parallel by different processors to minimize total compilation time for the software system, version of each component being user specified in the configuration model. - View Dependent Claims (26, 27, 28, 29)
-
-
30. In a digital processing system, a method of building a software system having a multiplicity of components, the steps comprising:
-
providing a plurality of processors coupled to form a network; providing a compiler in local memory of one of the processors, the other processors having access to the compiler; and executing configuration management means on one of the processors, the configuration management means assigning different components of the software system to different processors of the network to compile the components referring to the compiler of the one processor, the processors compiling respectively assigned components in parallel to minimize total compilation time of the software system.
-
-
31. In a network of computer processors, a method of displaying through one processor a multiplicity of compilation status messages from different processors in the network comprising the steps of:
-
using computer means, collecting the messages of each compilation of each processor separately from that of other compilations, the processors compiling, in parallel, modules of a software system to minimize total compilation time of the system; and using a display driver of the one processor, displaying the messages of a compilation only on termination of that compilation.
-
Specification