A formal treatment of interference in remote procedure calls

  • Giuseppe Pappalardo
  • Santosh K. Shrivastava
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 331)


Remote procedure calls (rpcs) are a distributed programming facility enabling a client program to call a procedure that will be executed by a server computation running on a remote machine. It would be desirable that remote and local procedure calls could be treated uniformly, so as to make distribution transparent to the programmer. But transparency may be impaired if, because of communication or machine failures, computations serving the rpc of a client are allowed to interfere with computations serving later rpcs of that client. This paper gives a formal treatment of interference in rpcs. The formalism used is that of occurrence graphs. The main result obtained is a sufficient condition for rpcs to be interference-free. The practical significance of this condition is highlighted by relating it to interference prevention techniques often adopted in the design of rpc mechanisms.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [ASU]
    Aho A., Sethi R., Ullmann J., Principles of Compiler Design, Addison-Wesley, 1986.Google Scholar
  2. [BR]
    Best E. and Randell B., “A Formal Model of Atomicity in Asynchronous Systems”, Acta Informatica 16 (1981), 93–124.CrossRefGoogle Scholar
  3. [Gor]
    Goree J., “Internal Consistency of a Distributed Transaction System”, M. Sc. Thesis, Tech. rep. LCS/TR-286, Massachusetts Institute of Technology, 1983.Google Scholar
  4. [LS]
    Liskov B. and Scheifler R., “Guardians and Actions: Linguistic Support for Robust Distributed Programming”, ACM TOPLAS, July 1983.Google Scholar
  5. [LaB]
    Lampson B., “Remote Procedure Calls”, in LNCS 105, 246–265, Springer-Verlag, New York, 1981.Google Scholar
  6. [LaL]
    Lamport L., “Time, Clocks, and the Ordering of Events in Distributed Systems”, CACM 21 (7), 558–565, July 1978.Google Scholar
  7. [Nel]
    Nelson B., “Remote Procedure Call”, Ph. D. thesis, Tech. rep. CSL-79-3, Xerox Palo Alto Research Center, 1981.Google Scholar
  8. [PS]
    Panzieri F., Shrivastava S.K., “Rajdoot: a Remote Procedure Call Mechanism Supporting Orphan Detection and Killing”, IEEE Transactions on Software Engineering, 14, 1, 30–37, Jan. 1988.CrossRefGoogle Scholar
  9. [Shr]
    Shrivastava S., On the Treatment of Orphans in a Distributed System, in Proc. of the 3rd Symposium on Reliability in Distributed Software and Database Systems, 155–162, IEEE Computer Society, 1983.Google Scholar
  10. [Wal]
    Walker E., “Orphan Detection in the Argus System”, M. Sc. Thesis, Tech. rep. LCS/TR-326, Massachusetts Institute of Technology, 1984.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1988

Authors and Affiliations

  • Giuseppe Pappalardo
    • 1
    • 2
  • Santosh K. Shrivastava
    • 1
  1. 1.Computing LaboratoryThe University of Newcastle upon TyneUK
  2. 2.Università di Reggio CalabriaItaly

Personalised recommendations