TDDA 47 REALTIDS- OCH PROCESSPROGRAMMERING, 3 poäng

/Real Time and Concurrent Programming/
För Ii4, M4, Y4
Utbildningsområde: Teknik
Ämnesgrupp: Datalogi
Fördjupningsnivå: B
Klassning för datavetenskaplig examen: Datavetenskap, datalogi.

Mål:
Att ge kunskaper och färdigheter att programmera i form av parallella processer i högnivåspråk. Att ge förståelse för problemställningar, metoder och struktureringsmekanismer för realtids- och processprogrammering. Speciellt stor vikt läggs vid att programmeringen syftar till att påverka en yttre miljö av sensorer och effektorer.

Förkunskaper:
För Y: TDDB 20 Programmering - Tillämpningar och datastrukturer, eller motsvarande.
För M: TDDA 90 Datorsystem och Programmering, TDDA 29 Datastrukturer, eller motsvarande.
För I: TDDB 24 Programmering - Grundkurs, TDDA 29 Datastrukturer, eller motsvarande.
Goda kunskaper i programmering i ett procedurellt programspråk (t ex Pascal eller C), eller motsvarande

Organisation:
På föreläsningar genomgås den teoretiska delen. Lektionerna syftar till att öva de genomgångna momenten samt förbereda för laborationskursen.

Kursinnehåll:
Parallellt exekverande program i motsats till sekventiella.
Kommunikationsstrategier och synkroniseringsmekanismer för processinteraktion.
Händelsestyrda system, cyklisk aktivering av processer, distribuerade system, problem och lösningsmetoder.
Studie och diskussion av programmeringsspråkskonstruktioner för parallell- och realtidshantering. Resurshantering. Specificering, verifikation och validering.
Exempel från bl a Modula-2, Ada och OCCAM.

Kurslitteratur:
Kompendium och laborationsmaterial, utgivna av institutionen för datavetenskap.
Utökad litteratur:
Burns & Wellings: Real Time Systems and their programming languages, Addison Wesley.

Examination:
LAB 1 En laborationskurs.
TEN 1 En skriftlig tentamen.