I009 Parallel Computing

Faculty of Informatics
Spring 2000
Extent and Intensity
3/0. 3 credit(s) (plus extra credits for completion). Recommended Type of Completion: zk (examination). Other types of completion: k (colloquium), z (credit).
Teacher(s)
prof. RNDr. Antonín Kučera, Ph.D. (lecturer)
Guaranteed by
prof. RNDr. Mojmír Křetínský, CSc.
Department of Computer Science – Faculty of Informatics
Contact Person: prof. RNDr. Antonín Kučera, Ph.D.
Prerequisites (in Czech)
I002 Algorithms I && P001 OS && P006 Principles of Prog.Languages
Course Enrolment Limitations
The course is also offered to the students of the fields other than those the course is directly associated with.
fields of study / plans the course is directly associated with
Syllabus
  • The course is an introduction to the area of concurrent and distributed programming. It focuses on general principals and paradigms which stand behind the design of concurrent and distributed algorithms. The studied problems are first demonstrated on concrete (real) examples, then they are formulated abstractly and a solution is proposed. An emphasis is on formal justification of correctness of the presented solutions; in order to do that, some formalisms (transition systems, temporal logics) are introduced and applied. Finally, it is also demonstrated how the things work in practice (e.g., in the Unix operating system).
  • Basic principles; atomic instructions, interleaving, liveness, fairness.
  • Concurrent programs; formal semantics, temporal logics.
  • The mutual exclusion problem; Dekker's and Peterson's algorithm.
  • Semaphores; definition, application (mutual exclusion, producer-consumer, etc.), implementation in the Unix operating system.
  • Monitors; definition, application (producer-consumer, readers and writers), implementation (simulation of monitors by semaphores and vice versa).
  • The problem of dining philosophers; solutions using semaphores and monitors.
  • Distributed programming; synchronous and asynchronous communication, rendezvous, messages.
  • CSP and Occam; transputer.
  • Distributed algorithms; distributed mutual exclusion, distributed termination.
Literature
  • ANDREWS, Gregory R. Concurrent programming :principles and practice. Redwood City: Benjamin/Cummings Publishing Company, 1991, xvii, 637. ISBN 0-8053-0086-4. info
Language of instruction
Czech
Further Comments
The course is taught annually.
The course is taught: every week.
The course is also listed under the following terms Spring 1996, Spring 1997, Spring 1998, Spring 2001, Spring 2002.
  • Enrolment Statistics (Spring 2000, recent)
  • Permalink: https://is.muni.cz/course/fi/spring2000/I009