Using Time Instead of Timeout for Fault-Tolerant Distributed Systems.
ACM Transactions on Programming Languages and Systems (TOPLAS)
Translation and Execution of Distributed Ada Programs: Is It Still Ada?
IEEE Transactions on Software Engineering
Some problems in distributing real-time Ada programs across machines
SIGAda '85 Proceedings of the 1985 annual ACM SIGAda international conference on Ada
Adding time to synchronous process communications
IEEE Transactions on Computers - Special Issue on Real-Time Systems
Instruction level timing mechanisms for accurate real-time task scheduling
IEEE Transactions on Computers - Special Issue on Real-Time Systems
Distributed Ada execution: a definitional void
IRTAW '87 Proceedings of the first international workshop on Real-time Ada issues
C3P Proceedings of the third conference on Hypercube concurrent computers and applications: Architecture, software, computer systems, and general issues - Volume 1
Translation and Execution of Distributed Ada Programs: Is It Still Ada?
IEEE Transactions on Software Engineering
ACM SIGAda Ada Letters
Real-time Ada: outstanding problem areas
IRTAW '89 Proceedings of the third international workshop on Real-time Ada issues
Virtual nodes and units of distribution for distributed Ada
IRTAW '89 Proceedings of the third international workshop on Real-time Ada issues
A Performance Analysis of Timed Synchronous Communication Primitives
IEEE Transactions on Computers
TRI-Ada '92 Proceedings of the conference on TRI-Ada '92
ACM SIGAda Ada Letters
Ada in distributed systems: an overview
ACM SIGAda Ada Letters
Using Ada as a language for a CAD tool development: lessons and experiences
WADAS '88 Proceedings of the fifth Washington Ada symposium on Ada
Hi-index | 14.98 |
This paper examines, in the context of distributed execution, the meaning of Ada constructs involving time. In the process, unresolved questions of interpretation and problems with the implementation of a consistent notion of time across a network are uncovered. It is observed that there are two Ada mechanisms that can involve a distributed sense of time: the conditional entry call, and the timed entry call. It is shown that a recent interpretation by the Language Maintenance Committee resolves the questions for the conditional entry calls but results in an anomaly for timed entry calls. A detailed discussion of alternative implementations for the timed entry call is made, and it is argued that: 1) timed entry calls imply a common sense of time between the machines holding the calling and called tasks; and 2) the measurement of time for the expiration of the delay and the decision of whether or not to perform the rendezvous should be made on the machine holding the called task. The need to distinguish the unreadiness of the called task from timeouts caused by network failure is pointed out. Finally, techniques for realizing a single sense of time across the distributed system (at least to within an acceptable degree of uncertainty) are also discussed.