Methods and systems for managing an application's relationship to its run-time environment
First Claim
1. A computer-implemented method for running an application using a single framework module including a framework data structure, the framework data structure including an application table and a parameter table, the application table including application table entries, the parameter table including parameter table entries, the method comprising:
- (a) selecting an application table entry;
(b) collecting data specifying a type of error;
(c) collecting data specifying a sub-application referenced by the selected application table entry;
(d) collecting data specifying an error response action; and
(e) processing the selected application table entry, the processing comprising;
(i) running a global initialize function referenced by the selected application table entry, the global initialize function operable to initialize a plurality of threads of the sub-application;
(ii) running the sub-application referenced by the selected application table entry with one or more parameters referenced by one or more parameter table entries;
(iii) if the application table entry being processed references the specified sub-application, and if the specified sub-application generates an error of the specified type, performing the specified error response action; and
(iv) running a global terminate function referenced by the selected application table entry, the global terminate function operable to terminate the plurality of threads of the sub-application.
4 Assignments
0 Petitions
Accused Products
Abstract
Disclosed are a framework for managing an application'"'"'s relationship to its run-time environment and an engine that accepts the framework as input and runs the application within the environment. Aspects of the framework and engine may be changed to suit a changing environment without changing the application itself. By managing details of the environment, the invention leaves developers free to focus on the specific tasks of the application. The framework also allows the engine to provide standardized services such as deadlock and leak detection, progress monitoring, and results logging. As an example, the application may be a software test suite. The invention allows the test suite to be run single- or multi-threaded and with individual tests within the suite running consecutively or concurrently. The invention can be parameterized to accommodate different testing goals, such as basic variation testing, regression testing, and stress testing, without changing the test suite itself.
-
Citations
17 Claims
-
1. A computer-implemented method for running an application using a single framework module including a framework data structure, the framework data structure including an application table and a parameter table, the application table including application table entries, the parameter table including parameter table entries, the method comprising:
-
(a) selecting an application table entry; (b) collecting data specifying a type of error; (c) collecting data specifying a sub-application referenced by the selected application table entry; (d) collecting data specifying an error response action; and (e) processing the selected application table entry, the processing comprising; (i) running a global initialize function referenced by the selected application table entry, the global initialize function operable to initialize a plurality of threads of the sub-application; (ii) running the sub-application referenced by the selected application table entry with one or more parameters referenced by one or more parameter table entries; (iii) if the application table entry being processed references the specified sub-application, and if the specified sub-application generates an error of the specified type, performing the specified error response action; and (iv) running a global terminate function referenced by the selected application table entry, the global terminate function operable to terminate the plurality of threads of the sub-application. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computing system including a processing unit and memory for running an application using a single framework module including a framework data structure, the framework data structure including an application table and a parameter table, the application table including application table entries, the parameter table including parameter table entries, the memory storing instructions that, when executed by the processing unit, cause the processing unit to:
-
(a) select an application table entry; (b) collect data specifying a type of error; (c) collect data specifying a sub-application referenced by the selected application table entry; (d) collect data specifying an error response action; and (e) process the selected application table entry, the processing comprising; (i) running a global initialize function referenced by the selected application table entry, the global initialize function operable to initialize a plurality of threads of the sub-application; (ii) running the sub-application referenced by the selected application table entry with one or more parameters referenced by one or more parameter table entries; (iii) if the application table entry being processed references the specified sub-application, and if the specified sub-application generates an error of the specified type, then performing the specified error response action; and (iv) running a global terminate function referenced by the selected application table entry, the global terminate function operable to terminate the plurality of threads of the sub-application referenced by the selected application table entry. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17)
-
Specification