Abstract

This paper describes the implementation of a novel paradigm for building distributed application software in Ada. The entire application is written as a single program, which is partitioned for distributed execution after its design. The partitioning is expressed in a separate notation called the Ada Program Partitioning Language (APPL). A modified compilation system accepts an Ada program and an APPL specification for it as input, to produce a separate executable image for each node. There is considerable freedom in what Ada entities may be placed on different nodes. The two-phase design approach helps reduce design complexity, and allows experimentation with different strategies for allocating software to hardware without requiring software redesign. Our implementation is currently under the final stages of testing using a modified version of the Ada compiler validation test-suite.Section 1 presents an overview of our paradigm and the rationale behind it. Section 2 introduces APPL. Section 3 describes our current implementation. Section 4 discusses the question of what Ada entities should be distributable, and compares several alternatives. Finally, section 5 concludes the paper with pointers to future work.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call