Gäller från och med: Höstterminen 2020
Beslutad av: Professor Thomas Johansson
Datum för fastställande: 2020-09-24
Avdelning: Datavetenskap (LTH)
Kurstyp: Gemensam kurs, avancerad nivå och forskarnivå
Kursen ges även på avancerad nivå med kurskod: EDAP10
Undervisningsspråk: Svenska
I flertrådade program hanteras parallella, asynkrona förlopp, ofta i interaktion med en fysisk omvärld. Bland de många tillämpningarna återfinns styrsystem, nätverkskommunikation, samt interaktiva system. Kursen syftar till att ge förmåga att konstruera robusta, resurseffektiva och välstrukturerade flertrådade program.
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
Grundläggande begrepp: jämlöpande aktiviteter, busy-wait och polling, synkronisering och kommunikation, odelbara operationer som test-and-set, ömsesidig uteslutning. Synkronisering och signalering i system med delat minne: lås, monitorer. Synkronisering och signalering i meddelandebaserade system. Trådning i interaktiva system med callbacks. Uppkomst och analys av dödläge (deadlock och livelock). Användning av några centrala delar av Javas concurrent-paket, såsom lås, semaforer, trådpooler, atomära värden och blockerande köer. Orientering om realtidsoperativsystem, schemaläggning, multicore-maskiner, låsfria algoritmer. Utblick mot mer avancerade ramverk i Javas concurrent-paket.
Goetz, B.: Java Concurrency in Practice. Addison-Wesley, 2006. ISBN 0321349601.
Ytterligare material tillhandahålls av institutionen.
Undervisningsformer: Föreläsningar, laborationer
Examinationsformer: Skriftlig tentamen, inlämningsuppgifter.
Obligatoriska laborationer och skriftlig tentamen. Slutbetyg på kursen grundar sig på resultatet av den skriftliga tentamen.
Betygsskala: Underkänd, godkänd
Examinator:
Förkunskapskrav: EDAA01 Programmeringsteknik - fördjupningskurs eller EDAA30 Programmering i Java - fortsättningskurs
Kursansvariga:
Hemsida: http://cs.lth.se/edap10/