Valid from: Autumn 2020
Decided by: Professor Thomas Johansson
Date of establishment: 2020-09-24
Division: Computer Science (LTH)
Course type: Course given jointly for second and third cycle
The course is also given at second-cycle level with course code: EDAP10
Teaching language: Swedish
Concurrent programs combine parallel, asynchronous activities, frequently interacting with a physical environment. Applications include control systems, network communication, and interactive systems. The course aims to give students ability and skills to design robust, efficient, and well-structured concurrent programs.
Knowledge and Understanding
For a passing grade the doctoral student must
Competences and Skills
For a passing grade the doctoral student must
Judgement and Approach
For a passing grade the doctoral student must
Basic concepts: concurrent activities, busy-wait and polling, synchronization and communication, atomic operations such as test-and-set, and mutual exclusion. Synchronization and signaling in shared-memory applications: locks, monitors. Synchronization and signaling in message-passing applications. Concurrency in interactive systems with callbacks. Analysis of deadlock and livelock. Central aspects of the Java concurrent package, such as locks, semaphores, thread pools, atomics, and blocking queues. Overview of real-time operating systems, scheduling, multicore hardware, lock-free algorithms. Brief introduction to more advanced frameworks in the Java concurrent package.
Goetz, B.: Java Concurrency in Practice. Addison-Wesley, 2006. ISBN 0321349601.
Additional materials provided by the department.
Types of instruction: Lectures, laboratory exercises
Examination formats: Written exam, written assignments.
Compulsory lab work and written examination. The final grade of the course is based on the result of the written examination.
Grading scale: Failed, pass
Examiner:
Admission requirements: EDAA01 Programming - Second Course or EDAA30 Programming in Java - Second Course
Course coordinators:
Web page: http://cs.lth.se/edap10/