Kunskap och förståelse Efter genomgången kurs ska studenten kunna redogöra för grundläggande begrepp inom operativsystem (1) redogöra för processbegreppet samt flertrådade applikationer (2) beskriva synkronisering av trådar och processer samt kommunikation mellan dessa (3) redogöra för algoritmer och tekniker för schemaläggning (4) redogöra för minneshantering samt filsystem i operativsystem (5). Färdighet och förmåga Efter genomgången kurs ska studenten kunna skapa flertrådade applikationer (6) lösa synkroniseringsproblem som uppstår under exekvering av flera processer eller trådar med lämpliga synkroniseringsprimitiver (7). Värderingsförmåga och förhållningssätt Efter genomgången kurs ska studenten kunna analysera och värdera olika lösningar på enklare programmeringsuppgifter inom synkronisering, minneshantering och filsystem (8).
Kursinnehåll
Kursen behandlar: Introduktion av operativsystem Processer och schemaläggning Samtidighet och parallellitet (Concurrent programming) Synkronisering av trådar Minneshantering Filsystem och I/O
Förutsättningar
Grundläggande behörighet samt godkänt resultat på minst 3 hp i kursen Objektorienterad programmering i Java 7,5 hp alternativt godkänt resultat på minst 3,5 hp i kursen Programmering i C för inbyggda system 7,5 hp eller motsvarande
Litteratur
Operating System Concepts - Silberschatz, Abraham, Galvin, Peter Baer & Gagne, Greg