DM563: Concurrent Programming
Kommentar
Indgangskrav
Faglige forudsætninger
Formål
Målet for dette kursus er at beskrive og forklare centrale ideer og teknikker inden for concurrent programming, dvs. programmer der anvender flere interagerende tråde eller processer samtidigt. Udover den systematiske gennemgang af principper og metoder for concurrency, fokuserer kurset på at anvende disse metoder og på at få praktisk erfaring med concurrent programmering
Kurset bygger oven på den viden, der er erhvervet i kurserne DM550 Introduktion til programmering, og giver et fagligt grundlag for at studere emnet DM510 Operativsystemer, der er placeret senere i uddannelsen.
I forhold til uddannelsens kompetenceprofil har kurset eksplicit fokus på at:
- Give kompetence til: håndtere komplekse og udviklingsorienterede situationer i studie- og arbejdssammenhænge; identificere egne læringsbehov og strukturere egen læring i forskellige læringsmiljøer.
- Give færdigheder i: træffe og begrunde fagligt relaterede beslutninger; beskrive, formulere og formidle problemstillinger og resultater til enten fagfæller og ikke-specialister eller samarbejdspartnere og brugere.
- Give viden om principper for konstruktion af computerhardware og styresystemer, herunder distribuerede og parallelle systemer.
Målbeskrivelse
Ved kursets afslutning forventes den studerende at kunne:
- identificere brugen af concurrency i programmer.
- beskrive de anvendte concurrency mekanismer fra kurset.
- forklare fundamentale problemer, teknikker og løsninger fra concurrent programmer.
- argumentere for egenskaber for konkrete concurrent programmer.
- beskrive og analysere concurrent arkitekturer under brug af modelbaserede metoder.
- designe og implemetere ikke-trivielle concurrent programmer
- redegøre for nogle almindelige arkitekturer i concurrent programmer.
Indhold
Kurset indeholder følgende faglige hovedområder:
- Processer
- tråde
- monitor begrebet
- delt hukommelse
- synkronisering
- safety and liveness
- modellering af concurrency
- dynamiske systemer
- message passing
- concurrent architectures.
Litteratur
Eksamensbestemmelser
Eksamenselement a)
Tidsmæssig placering
Udprøvninger
Projektopgave
EKA
Censur
Bedømmelse
Identifikation
Sprog
Hjælpemidler
ECTS-point
Vejledende antal undervisningstimer
Undervisningsform
- Introfase (forelæsning) - 20 timer
- Træningsfase: 22 timer, heraf 22 timer laboratorie
Aktiviteter i studiefasen:
- Læsning af kursusmateriale
- Refleksion over metoder og teoretiske koncepter.
Ansvarlig underviser
Skemaoplysninger
Administrationsenhed
Team hos Uddannelsesjura & Registratur
Udbudssteder
Anbefalede studieforløb
Overgangsordninger
Se overgangsordninger for alle kurser på Det Naturvidenskabelige Fakultet.