lunduniversity.lu.se

Forskar­utbildnings­kurser

Faculty of Engineering | Lund University

Detaljer för kursplan för kurs EDAP10F giltig från och med Autumn 2020

Utskriftsvänlig visning

Allmänt
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.
Innehå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.
Kunskap och förståelse
  • För godkänd kurs skall doktoranden
  • be familiar with and be able to describe how threads execute and are synchronized in a concurrent program;
    be familiar with causes for race conditions, and techniques for avoiding them;
    be familiar with causes for deadlock, and techniques for avoiding it.
Färdighet och förmåga
  • För godkänd kurs skall doktoranden
  • be able to design concurrent reactive software based on application requirements and prescribed interfaces to the environment;
    be able to implement and debug multi-threaded software;
    be able to perform simple deadlock analysis for a small system of threads and resources
Värderingsförmåga och förhållningssätt
  • För godkänd kurs skall doktoranden
  • be able to compare and discuss design and implementation options for concurrent programs;
    be able to make trade-offs between performance and implementation complexity in concurrent programs
Undervisningsformer
  • Föreläsningar
  • Laborationer
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.
  • Underkänd, godkänd
Förkunskapskrav
  • EDAA01 Programming - Second Course or EDAA30 Programming in Java - Second Course
Förutsatta förkunskaper
Urvalskriterier
Litteratur
  • Goetz, B.: Java Concurrency in Practice. Addison-Wesley, 2006. ISBN 0321349601.
  • Additional materials provided by the department.
Övrig information
Kurskod
  • EDAP10F
Administrativ information
  • 2020-09-24
  • Professor Thomas Johansson

Alla publicerade kurstillfällen för kursplanen

Inga matchande kurstillfällen hittades.

0 kurstillfällen.


Utskriftsvänlig visning