FI:IA009 Parallel Computing - Course Information
IA009 Parallel Computing
Faculty of InformaticsSpring 2005
- 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. - Timetable
- Wed 12:00–13:50 B410
- Prerequisites
- ! I009 Parallel Computing
A preliminary knowledge on operational semantics and modal logic is an advantage (but not a necessity). - Course Enrolment Limitations
- The course is only offered to the students of the study fields the course is directly associated with.
- fields of study / plans the course is directly associated with
- there are 7 fields of study the course is directly associated with, display
- Course objectives
- 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.
- Syllabus
- 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.
- Enrolment Statistics (recent)
- Permalink: https://is.muni.cz/course/fi/spring2005/IA009