Göm menyn

TDIU16 Process- och operativsystemprogrammering

Föreläsningar


Föreläsningar

Slides till föreläsningarna publiceras i samband med varje föreläsning.

Material Kapitel 9 ed. Kapitel 10 ed. Kapitel i Intro to Conc.
0 Kursintroduktion, introduktion till C - - 1 och 2
1 Pintos och systemanrop i Pintos 2.3, 2.4 2.3, 2.4 (finns ej)
2 Semaforen 6.1, 6.6, 6.7 6.1, 6.6, 7.1 3, 4
3 Synkronisering: Lås och kritiska sektioner 6.2, 6.5, 6.7 6.2, 6.5, 7.1 5, 6
4 Synkronisering: Deadlocks och Condition variables 7 8 7, 8
5 Synkronisering: Hur implementeras lås? 6.3, 6.4 6.3 10

Notera: Kapitel 9 i Introduction to Concurrent Programming in C är relevant för kursen, även om det inte finns med i läsanvisningarna. Innehållet där i tas upp genomgående i föreläsningarna, snarare än på en specifik föreläsning. Det är därför fortfarande relevant för kursen, och därmed värt att läsa efter föreläsning 4 som repetition och förtydligande.

Kodexempel från föreläsningarna

Nedan finns kodexempel från föreläsningarna. Arkivfilen är ordnad efter vilket problem som behandlas.

Kodexempel från föreläsningarna

Extra övning: Två gamla tentafrågor.

Seminarier

Ytterligare övning

  • Online-övningarna innefattar en samling synkroniseringsuppgifter i Progvis. Progvis ger direkt feedback på om din lösning är bättre än den förra. Du kan sedan öva på att skriva bättre testfall för att hitta problem i andra studenters lösningar.
  • I The Deadlock Empire tar du rollen som schemaläggare med målet att överbevisa felaktigt synkroniserad kod som just felaktig. Koden är given - du bestämmer var trådbyten ska ske.

Litteratur

Annan relevant läsning


Sidansvarig: Filip Strömbäck
Senast uppdaterad: 2026-03-31