Building distributed Ada applications from specifications and functional components
Dennis L. Doubleday, Mario R. Barbacci, Charles B. Weinstock, Michael J. Gardner, Randall W. Lichota · 1991
Durra is a language and support environment for the specification and execution of distributed Ada applications.A Durre programmer describes an application as a collection of processes and daka links.Wre complicated application descriptions may also include a structuring of this collection that varies dynamically according to a set of reconfiguration conditions.Each process defined in the application description is associated with an independently compiled Ada subprogram that implements the behavior of that process.The Durra programmer specifies the distribution of application components by assigning them to virtual nodas called clusters.For each cluste~the Durra compiler generates a multi-threa~d Ada program that imports the code for the processes assigned to that node and manages their execution.Durra also facilitates rapid prototyping through the use of tools that interpret timing specifications associated with processes and generate Ada code to simulate their expected bahavkx 1 Motivation Computing environments consisting of loosely-comwcted networks of special and general purpose processors are becoming commonplace.The corresponding trend in software is away from sequential programs running on large uniprocessor hardware toward concurrent programs distributed across multiple, possibly heterogeneous, platforms.Today, developers of such applications typically "hard code" the allocation of computing resources into their applications by explicitly assigning specific tasks to mn on specific processors at specific times.The component tasks of such an application require built-in knowledge about the structure of the application and the allocation of resources in order to This work is sponsored by the U.S. Department of Defense J%miaai n to c. y ithout fee #11 or art of ia material ~:">"::~:v~:f::$'~'e r e a the tI e o the %ti$~?~a!~~dste E&~~J?c~~,Ea 1) s#'w4#%&%&" pernuswon.