Elements for a course on the design of distributed algorithms

  • Authors:
  • N. Plouzeau;M. Raynal

  • Affiliations:
  • -;-

  • Venue:
  • ACM SIGCSE Bulletin
  • Year:
  • 1992

Quantified Score

Hi-index 0.00

Visualization

Abstract

Sequential algorithms design and operating system principles have always been fundamental courses in any computer science curriculum. Protocols are now a well established discipline, and parallelism and concurrency issues are becoming more and more popular in academic courses. Along these guidelines distributed algorithms have now emerged as a proper topic of computer science; studying them demands some prerequisite on algorithms, parallelism and protocols but they cannot themselves be reduced to these three domains.In this paper we present elements for a course on the design of distributed algorithms performing common operating system services. The fundamental aspects of this course lie in teaching the students that no global state can be instantaneously caught because of the asynchronism of the processes and message transmission delays. We state basis problems addressed during the lecture (mutual exclusion, rendezvous implementation, snapshot computation, network traversals and distributed evaluation of predicates) and present how students are faced with distributed problems in practical classes, using a distributed memory parallel machine to implement their solutions.