course-details-portlet

TTK4145

Sanntidsprogrammering

Studiepoeng 7,5
Nivå Tredjeårsemner, nivå III
Undervisningsstart Vår 2020
Varighet 1 semester
Undervisningsspråk Engelsk
Sted Trondheim
Vurderingsordning Mappevurdering

Om

Om emnet

Faglig innhold

Programmeringsformalismer for sanntid; POSIX, Ada, Java og Go. Tråder/prosesser, synkronisering og kommunikasjon. Delt variabel-basert synkronisering og ressurskontroll. Feilhåndtering, tilgjengelighet og konsistens. Meldingsbasert synkronisering, CSP og formelle metoder. Praktiske øvinger og prosjekt.

Læringsutbytte

Kunnskap:
- Inngående kjennskap til synkroniseringsmekanismer som semaforer og monitorer.
- Inngående kjennskap til meldingsbasert synkronisering.
- Inngående kjennskap til tråder, prosesser, scheduling og synkronisering i perspektiv av et sanntids operativsystem.
- Inngående kjennskap til vanlige fallgruber ved sanntidsprogrammering.
- Inngående kjennskap til feilhåndtering og feiltoleranse.
- Inngående kjennskap til høytilgjengelighet og konsistens i systemer med flere tråder/prosesser.
- Kjenskap til programmeringsspråkene C, C++, Java, Ada og Go.
- Kjenskap til CSP, Formelle metoder og bruk av analyseverktøy for sanntidssystemer.
Ferdighet:
- Gode ferdigheter i design og utvikling av sanntids programvare herunder både systemer basert på meldingssending og delt variabelsynkronisering.
- Evne til å planlegge og gjennomføre praktisk implementasjon av et programvaresystem av signifikant kompleksitet. (~Noen tusen linjer C-kode).
- Gode ferdigheter i et fritt valgt programmeringsspråk (sannsynligvis C, C++, Java eller ADA).
- Studenten skal kunne forholde seg konstruktivt i sitt design til feilhåndtering og konsistens i systemer med flere deltagere.
Generell kompetanse:
- Gruppesamarbeide.
- IT & Programvareutvikling generelt.

Læringsformer og aktiviteter

Forelesninger og obligatoriske øvinger/prosjekt.

Obligatoriske aktiviteter

  • Øvinger
  • Prosjekt

Mer om vurdering

Mappevurdering gir grunnlag for sluttkarakter i emnet. I mappen inngår skriftlig avsluttende eksamen 75% og arbeider 25%. Resultatet for delene angis i %-poeng, mens sensur for hele mappen (sluttkarakteren) angis med bokstavkarakter.
Ved utsatt eksamen (kontinuasjonseksamen) kan skriftlig eksamen bli endret til muntlig eksamen.
Dersom studenten også etter utsatt eksamen har sluttkarakteren F/ikke-bestått, må studenten gjenta hele emnet neste studieår. Arbeider som teller med i sluttkarakteren må gjentas.

Kursmateriell

Pensumlitteratur og støttelitteratur oppgis ved semesterstart.

Studiepoengreduksjon

Emnekode Reduksjon Fra
SIE3050 7,5 sp
Dette emne har faglig overlapp med emnet i tabellen over. Om du tar emner som overlapper får du studiepoengreduksjon i det emnet du har dårligst karakter i. Dersom karakteren er lik i de to emnene gis det reduksjon i det emnet som er avlagt sist.

Fagområder

  • Program/system-utvikling
  • Datamaskiner
  • Datateknikk
  • Teknologiske fag

Kontaktinformasjon

Emneansvarlig/koordinator

Faglærere

Ansvarlig enhet

Institutt for teknisk kybernetikk

Eksamen

Eksamen

Vurderingsordning: Mappevurdering
Karakter: Bestått/Ikke bestått

Ordinær eksamen - Vår 2020

Arbeider
Vekting 25/100
Hjemmeeksamen (1)
Vekting 75/100 Dato Utlevering 02.06.2020
Innlevering 02.06.2020
Tid Utlevering 09:00
Innlevering 13:00
Varighet 4 timer Eksamenssystem Inspera Assessment
  • Øvrige kommentarer
  • 1) Merk at eksamensform er endret til hjemmeeksamen som et smittevernstiltak i den pågående koronasituasjonen. Please note that the exam form has changed to home examination as a preventive measure in the ongoing corona situation.

Utsatt eksamen - Sommer 2020

Arbeider
Vekting 25/100
Hjemmeeksamen
Vekting 75/100 Varighet 4 timer Eksamenssystem Inspera Assessment