Modeling of Software Partition for Distributed Real-Time Applications
- 1 October 1985
- journal article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Transactions on Software Engineering
- Vol. SE-11 (10) , 1113-1126
- https://doi.org/10.1109/tse.1985.231859
Abstract
The issue of software partition deals with the process of mapping the given set of logical modules, which reflect the user's point of view, into a set of software tasks, which reflect the software implementor's point of view. It is shown in this paper that the software partitioning problem can be modeled as one that maximizes the efficiency in resource utilization while observing the constraints on CPU throughput, memory space available, maximally allowed task execution time, and the order of module execution. The CPU and memory constraints are implementation dependent. The maximum task execution time constraint is due to considerations on the response time performance. The constraint on module execution order is a logical one, and it is shown to have significant performance impact. It is proven that by employing the module precedence relation, which reflects the sequence of module execution, the order of module execution can be properly maintained during the software partitioning process. And thus the defined tasks can be guaranteed to be completely executable, once properly activated With completely executable tasks, the operating overhead cost and the response time delay can be minimized. The following four module precedence relations are explored: precede, succeed, parallel, and precede as well as succeed. The validity of the selected partitioning criterion of maximizing the resource utilization efficiency is also assessed through simulation experiments. The results of simulation show that performance of the selected criterion is insensitive to the application environment, as well as to the application requirements.Keywords
This publication has 5 references indexed in Scilit:
- A Task Allocation Model for Distributed Computing SystemsIEEE Transactions on Computers, 1982
- Task Allocation in Distributed Data ProcessingComputer, 1980
- Tunable optically pumped GaAs-GaAlAs distributed-feedback lasersIEEE Journal of Quantum Electronics, 1978
- On Partitioning Program GraphsIEEE Transactions on Software Engineering, 1977
- Multiprocessor Scheduling with the Aid of Network Flow AlgorithmsIEEE Transactions on Software Engineering, 1977