Skip to main content
Log in

Real-Time Atomic Multicast Algorithms Implemented on a Shared Memory Multiprocessor

  • Published:
Real-Time Systems Aims and scope Submit manuscript

Abstract

Processes are distributed over processors that share directly accessible memory. Processes exchange messages via memory. Algorithms are specified which satisfy the atomic multicast requirements under two fault hypotheses: (1) fail-stop memory and fail stop processes and (2) fail-stop memory and processes with timing failures. It is shown that the algorithms can be applied under different scheduling conditions: (1) hard real-time (HRT) applications composed of periodically scheduled tasks and (2) HRT applications with tasks scheduled according to a static off-line calculated schedule. The performance measurements on an implementation of two algorithms are presented.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  • Alstein, D., and van der Stok, P. D. V. 1993. Hard real-time reliable multicast in the DEDOS system. In Third International Workshop on Resonsive Computer Systems. Lincoln, New Hampshire.

    Google Scholar 

  • Babaoglu, O., Stephenson, P., and Drummond, R. 1988. Reliable broadcasts and communication models tradeoffs and lower bounds. Distributed Computing 2: 177-189

    Google Scholar 

  • Babaoglu, O., and Toueg, S. 1993. Non-Blocking atomic commitment. In S. Mullender (ed.), Distributed Systems. New York: Addison Wesley, pp. 147-168.

    Google Scholar 

  • Baeten, J. C. M., and Bergstra, J. A. 1991. Real time process algebra. Formal Aspects of Computing 3(2): 142-188.

    Google Scholar 

  • Ben-Ari, M. 1990. Principles of Concurrent Programming. Englewood Cliffs, NJ: Prentice Hall.

    Google Scholar 

  • Birman, K. P., Schiper, A., and Stephenson, P. 1991. Lightweight causal and atomic group multicast. ACM Transactions on Computer Systems 9(3): 272-314.

    Google Scholar 

  • Burns, J. E., and Peterson, G. L. 1987. Constructing multi-reader atomic values from non-atomic values. In Proceedings of 16th ACM Symposium on Principles of Distributed Computers, pp. 222-231.

  • Chang, J., and Maxemchuk, N. F. 1984. Reliable broadcast protocols. ACM Transactions on Computer Systems 2(3): 251-273.

    Google Scholar 

  • Chen, J., and Burns, A. 1998. Asynchronous data sharing in multiprocessor real-time systems using process consensus. In Proceedings of the 10th Euromicro Workshop on Real Time Systems, IEEE, pp. 2-9.

  • Chiu, G.-M., and Chen, K.-S. 1998. Efficient fault-tolerant multicast scheme for hypercube multicomputers. IEEE Transactions on Parallel and Distributed Systems 9(10): 952-962.

    Google Scholar 

  • Cristian, F. 1985. Atomic broadcast: from simple message diffusion to Byzantine agreement. In Proceedings 15th International Symposium on Fault-Tolerant Computing. Ann Arbor, MI, pp. 200-206.

  • Cristian, F. 1988. Agreeing on who is present and who is absent in a synchronous distributed system. In Proceedings 18th International Symposium on Fault-Tolerant Computing. Tokyo, Japan, pp. 206-211.

  • Cristian, F., and Fetzer, C. 1999. The timed asynchronous distributed system model. IEEE Transactions on Parallel and Distributed Systems 10(6): 642-657.

    Google Scholar 

  • Dijkstra, E. W. 1968. Cooperating sequential processes. In F. Genuys (ed.), Programming Languages. New York: Academic Press.

    Google Scholar 

  • Dijkstra, E. W., and Feijen, W. H. J. 1988. A Method of Programming. New York: Addison Wesley.

    Google Scholar 

  • Dwork, C., and Lynch, N. 1988. Consensus in the presence of partial synchrony. Journal of the ACM 35(2): 288-323.

    Google Scholar 

  • Hadzilacos, V., and Toueg, S. 1993. Fault-tolerant broadcasts and related problems. In S. Mullender (ed.), Distributed Systems pp. 97-145.

  • Hammer, D. K., Luit, E. J., van der Stok, P. D. V., Verhoosel, J., and van Roosmalen, O. S. 1994. DEDOS: A distributed real-time environment. IEEE Parallel and Distributed Technology 2(4): 32-47.

    Google Scholar 

  • Herlihy, M. 1991. Wait-free synchronization. ACM Transactions on Programming Languages and Systems 11(1): 124-149.

    Google Scholar 

  • Kaashoek, M. F., Tanenbaum, A. S., Hammel, S. F., and Bal, H. E. 1989. An efficient reliable broadcast protocol. Operating Systems Review 23(4): 5-20.

    Google Scholar 

  • Kopetz, H., Damm, A., Koza, C., Mulazzani, M., Schwabl, W., Senft, C., and Zailinger, R. 1989. Distributed fault-tolerant real-time systems: The MARS approach. IEEE Micro.

  • Lamport, L., Shostak, R., and Pease, M. 1982. The Byzantine generals problem. ACM Transactions on Programming Languages and Systems 4(3): 256-280.

    Google Scholar 

  • Lamport, L. 1987. A fast mutual exclusion algorithm. ACM Transactions on Computer Systems 5(1): 1-11.

    Google Scholar 

  • Lomet, D. B. 1977. Process structuring, synchronization, and recovery using atomic actions. ACM SIGPLAN Notices 12(3): 128-137.

    Google Scholar 

  • Luit, E. J., and Martin, J. M. M. 1994. A convergence function for clock synchronization protocols. In Proceedings of the 2nd Workshop on Parallel and Distributed Real-Time Systems. Cancun, Mexico: IEEE

    Google Scholar 

  • Melliar-Smith, P. M., Moser, L. E., and Agrawala, V. 1990. Broadcast protocols for distributed systems. IEEE Transactions on Parallel and Distributed Systems 1(1): 17-25.

    Google Scholar 

  • Peterson, G. 1983. Concurrent reading while writing. ACM Transactions on Programming Languages and Systems 5(1): 46-55.

    Google Scholar 

  • Powell, D. (ed). 1991. Delta-4, A generic architecture for dependable distributed computing. Esprit research reports, EC Directorate.

  • Pulido, J.-M., and in, K.-J. 1999. SM: Real-time multicast protocols for simultaneous message delivery. In Proceedings of 5th Int. Conf. on Real-Time Computer Systems and Applications. IEEE, pp. 66-73.

  • Sha, L., Rajkumar, R., and Lehoczky, J. P. 1990. Priority inheritance protocols: an approach to real-time synchronization. IEEE Transactions on Computers 39(9): 1175-1185.

    Google Scholar 

  • Stankovic, J. A., Spuri, M., DiNatale, M., and Butazzo, G. C. 1995. Implications of classical real-time scheduling results for real-time systems. IEEE Computer 28(6): 16-25.

    Google Scholar 

  • Turek, J., and Shasha, D. 1992. The many faces of consensus in distributed systems. IEEE Computer 26(6): 8-17.

    Google Scholar 

  • van der Stok, P. D. V., Claessen, M. M. M. P. J., and Alstein, D. 1994. A hierarchical membership protocol for synchronous distributed systems. In Proceedings of the 1st European Dependable Computing Conference. Berlin: Springer Verlag, pp. 597-616.

    Google Scholar 

  • van Dijk, G. J. W., and van der Wal, A. J. 1991. EMPS: The design of an architecture for a distributed homogeneous multiprocessor system. Microprocessors and Microsystems 15(4): 187-194.

    Google Scholar 

  • Verissimo, P., Rodrigues, L., and Baptista, M. 1989. Amp: A highly parallel atomic multicast protocol. In Proceedings of the ACM SIGCOMM 1989, pp. 83-93.

  • Vidyasankar, K. 1990. Concurrent reading while writing revisited. Distributed Computing 4(2): 81-85.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

van der Stok, P.D.V., Janssen-Raemaekers, A.H.T. Real-Time Atomic Multicast Algorithms Implemented on a Shared Memory Multiprocessor. Real-Time Systems 24, 55–91 (2003). https://doi.org/10.1023/A:1021753205918

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1021753205918

Navigation