A system for distributing a single Ada program to a network of loosely coupled computers is described. The system is applied to the distribution of a missile control system. We have found that implementing the entire Ada semantics for distributed systems is difficult, but that a pragmatic approach can give reasonable semantics. Our approach is based on source code transformation of the single Ada program into multiple Ada programs. These programs are then compiled with a standard compiler. The units of distribution are tasks and task types, subprograms, and variables. Restrictions are implied by the task termination semantics, the exception propagation between nodes, and the synchronization of tasks at activation.
Using a source code transformation approach to Ada in a distributed environment will give some implementation difficulties. This paper presents an all Ada, portable, solution to the problem of suspending a caller on one node during a call to a remote node. The solution is based on two sets of tasks on each node, making it possible for a caller to hang on an entry during the call. Algorithms are presented in pseudo-Ada.
A distributed Ada run‐time system, DARTS, is presented. DARTS is used with a source code transformation method for pre‐partitioning, and it also allows a late configuration. A single program can be partitioned to run on a loosely coupled multiprocessor system. The distributed units are tasks, task objects, packages, variables, procedures and functions. Task objects can by dynamically distributed. High fault tolerance is assured by unit redistribution. Design decisions, implementation details and ideas are presented.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.