Towards a real-time distributed systems annex in Ada

In this paper we address the problem of combining two issues that are standardized separately in two Ada 95 annexes: Real-Time Systems (Annex D) and Distributed Systems (Annex E). With these annexes it is possible to build applications with real-time requirements, or alternatively distributed applications; but real-time distributed applications are not directly supported. In this paper we propose extensions to the Distributed Systems Annex that would provide support for developing distributed real-time applications in Ada. The paper proposes an interface for assigning priorities to the messages in the interconnection networks, and also to the tasks executing remote operations, in a way that avoids priority inversions. It also addresses the issues of configuration of the RPC handler tasks and non blocking asynchronous remote procedure calls.