TDIU16 Process- och operativsystemprogrammering
Föreläsningar
Översiktlig plan
- Föreläsning 0: Kursintroduktion, introduktion till C
- Föreläsning 1: Pintos, systemanrop i Pintos
- Föreläsning 2: Semaforen
- Seminarie 1: Systemanropen exec, exit och wait
- Föreläsning 3: Synkronisering: Lås och conditions - Se nedan för de kodexempel som användes (gibberish, bank, sum)
- Föreläsning 4: Synkronisering: Fortsättning - Se nedan för de kodexempel som användes (print, sum)
- Föreläsning 5: Deadlocks
-
Seminarie 2: Övningar deadlocks och synkronisering:
Ett osynkroniserat program för att simulera filosofer.
En Banker's algorithm räkneuppgift.
OBS! Frågor som dyker upp före seminariet mailas till kursledaren.
OBS! Det går också bra ta upp frågor för diskussion på labtid. -
Extra övning:
Två gamla tentafrågor.
- Diverse kodexempel från föreläsningarna
The Deadlock Empire
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
Course book at Wiley. Also as E-book!
Design patterns for semaphores by Kenneth A. Reek
"Pass the Baton" and "I'll Do It For You" patterns for correct use of semaphores.
Process Synchronization with Readers and Writers Revisited Jalal Kawash
Much of what you want to know about readers-writers problem, including code examples.
The Problem with Threads by Edward A. Lee
No description.
IEEE Computer May 2006, pp. 33-42.
Blog with several operating system articles.
Semaphores are Surprisingly Versatile (Inledande förklaring av semaforen är bra, resterande är mer kuriosa.)
Linux insides. For the interested (tip from experienced assistant, not yet reviewed by me).
Sidansvarig: Filip Strömbäck, Klas Arvidsson
Senast uppdaterad: 2018-05-04