Kursplan för

Concurrent Programming
Flertrådad programmering

EDAP10F, 7.5 högskolepoäng

Gäller från och med: Autumn 2020
Beslutad av: Professor Thomas Johansson
Datum för fastställande: 2020-09-24

Allmänna uppgifter

Avdelning: Computer Science (LTH)
Kurstyp: Gemensam kurs, avancerad nivå och forskarnivå
Kursen ges även på avancerad nivå med kurskod: EDAP10
Undervisningsspråk: Swedish

Syfte

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.

Mål

Kunskap och förståelse

För godkänd kurs skall doktoranden

Färdighet och förmåga

För godkänd kurs skall doktoranden

Värderingsförmåga och förhållningssätt

För godkänd kurs skall doktoranden

Kursinnehåll

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.

Kurslitteratur

Goetz, B.: Java Concurrency in Practice. Addison-Wesley, 2006. ISBN 0321349601.
Additional materials provided by the department.

Kursens undervisningsformer

Undervisningsformer: Föreläsningar, laborationer

Kursens examination

Examinationsformer: Skriftlig tentamen, inlämningsuppgifter. Compulsory lab work and written examination. The final grade of the course is based on the result of the written examination.
Betygsskala: Underkänd, godkänd
Examinator:

Antagningsuppgifter

Förkunskapskrav: EDAA01 Programming - Second Course or EDAA30 Programming in Java - Second Course

Kurstillfällesinformation

Kontaktinformation och övrigt

Kursansvariga:
Hemsida: http://cs.lth.se/edap10/


Fullständig visning