The authors address the problem of allocating (assigning and scheduling) periodic task modules to processing nodes (PNs) in distributed real-time systems subject to task precedence and timing constraints. Using the branch-and-bound technique, a module allocation algorithm (MAA) is proposed to find an optimal allocation that maximizes the probability of meeting task deadlines. To incorporate both timing and logical correctness into module allocation, the probability of meeting task deadlines is used as the objective function. The MAA is then applied to find an optimal allocation of task modules in a distributed system. The timing aspects embedded in the objective function drive the MAA not only to assign task modules to PNs, but also to use a module scheduling algorithm for scheduling all modules assigned to each PN so that all tasks may be completed in time. Several numerical examples are presented to demonstrate the effectiveness and practicality of the proposed algorithms.
展开▼