Operativsystem och multicoreprogrammering

15 hp

Kursplan, Grundnivå, 1DT089

Det finns en senare version av kursplanen.
Kod
1DT089
Utbildningsnivå
Grundnivå
Huvudområde(n) med fördjupning
Datavetenskap G2F, Teknik G2F
Betygsskala
Underkänd (U), godkänd (3), icke utan beröm godkänd (4), med beröm godkänd (5)
Fastställd av
Teknisk-naturvetenskapliga fakultetsnämnden, 8 maj 2012
Ansvarig institution
Institutionen för informationsteknologi

Behörighetskrav

60 hp inklusive Imperativ och objektorienterad programmeringsmetodik och Datorarkitektur och digitalteknik, eller motsvarande kunskaper.

Mål

Efter godkänd kurs ska studenten kunna:

  • Redogöra för hur operativsystem och runtimesystem växelverkar med maskin- och programvara.
  • Förklara och använda algoritmer och tekniker för schemaläggning och synkronisering i system med en eller flera processorer och processorkärnor.
  • Redogöra för hur synkroniseringstekniker kan användas för att hantera samtidighet i datorsystem, och bedöma deras lämplighet i olika situationer.
  • Använda högnivåspråk för att utnyttja concurrency hos flerkärniga system.
  • Redogöra för principerna för olika programmeringsmodeller av flerkärniga system, till exempel processer, trådar, meddelandeöverföring och "software transactional memory".
  • Använda processer, trådar och meddelandeöverföring för programmering av flerkärniga system.
  • Presentera och diskutera kursens innehåll muntligt och skriftligt med för utbildningsnivån lämplig färdighet.

Innehåll

Processer, trådar och synkronisering. Principer och tekniker för programmering och schemaläggning av parallella system av processer på enkelprocessorer, multicore och multiprocessorer. Minneshantering i operativsystem och runtimesystem, inklusive minnesskydd, sidindelning och skräpsamling. Filsystem och grundläggande skyddsmekanismer. Praktisk användning av kunskaperna i genomförande av projektarbete i grupp. Programmering av parallella system i olika högnivåspråk, exempelvis Erlang, såvel som i olika lågnivåspråk, exempelvis C. Verktyg för dokumenthantering, versionshantering, debugging, testning, hantering av programbibliotek o dyl. Agila projektmetodiker, exempelvis Scrum och Extreme Programming.

Undervisning

Föreläsningar, laborationer, uppgifter och projektarbete i grupp.

Examination

Kursen examineras med tentamen och uppgifter omfattande sammanlagt 9 hp och projekt omfattande 6 hp. Icke slutförda projektarbeten kan återupptas för bedömning först vid nästa kurstillfälle.

Övriga föreskrifter

Kan ej ingå i examen tillsammans med 1DT049 Processorienterad programmering eller 1DT044 Operativsystem I.

FÖLJ UPPSALA UNIVERSITET PÅ

facebook
instagram
twitter
youtube
linkedin