ID1206 Operativsystem 7,5 hp

Operating Systems

OBS!

Informationen nedan baseras på en kursplan som ännu inte har börjat gälla.

Kursen avser ge dig kunskap om hur operativsystem implementeras och hur man praktiskt skriver program som utnyttjar operativsystem, så kallad systemprogrammering.

  • Utbildningsnivå

    Grundnivå
  • Huvudområde

    Teknik
  • Betygsskala

    A, B, C, D, E, FX, F

Kurstillfällen/kursomgångar

HT19 för programstuderande

HT19 TCOMK för programstuderande

HT18 för programstuderande

HT18 för programstuderande

Lärandemål

Efter godkänd kurs ska studenten kunna

  • förklara hur flertrådade processer är strukturerade, 
  • förklara hur ett operativsystem kan hantera flera processer samtidigt, 
  • implementera delar av ett operativsystems funktioner.

För högre betyg ska studenten dessutom kunna

  • förklara hur virtualisering av minne implementeras, 
  • förklara hur minneshantering implementeras, 
  • förklara egenskaper för olika schemaläggningsalgoritmer, 
  • förklara egenskaper för olika typer av processkommunikation, 
  • förklara implementering av mer avancerade filsystem.

Kursens huvudsakliga innehåll

Kursen ger kunskaper om principerna för och hur man kan implementera

  • abstraktioner av hårdvara
  • virtualisering av resurser och schemaläggning av uppgifter; främst vad avser exekvering, minne och persistent lagring.

Ett operativsystems uppbyggnad studeras för att öka kunskapen om dessa begrepp och även ge färdighet i att på ett effektivt sätt använda den abstraktionsnivå som ett operativsystem erbjuder.

Kursupplägg

Kursen består av 12-16 föreläsningar till vilka praktiska mindre uppgifter kopplas. De praktiska uppgifterna är avsedda att ge en ökad förståelse för de begrepp som presenteras såväl som ge den praktiska färdighet som krävs för att uppfylla kursens mål.

Kursen har även en större uppgift som skall utföras under kursens gång. Uppgiften skall ge ökad förståelse för hur ett operativsystem i praktiken är uppbyggt och hur det fungerar.

Behörighet

Slutförda kurser motsvarande

  • ID1018 Programmering I
  • IS1200 Datorteknik, grundkurs
  • ID1020 Algoritmer och datastrukturer
  • ID1019 Programmering II.

Rekommenderade förkunskaper

För att kunna tillgodogöra dig kursen skall du ha grundläggande kunskaper om hur datorer är uppbyggda och fungerar motsvarande grundkursen i datorteknik samt programmeringsvana.Erfarenhetsmässigt har det visat sig vara mycket svårt för studenter som inte har dessa förkunskaper att klara kursen.

Litteratur

Kursen kommer att vara baserad på:

Remzi H. Arpaci-Dusseau och Andrea C. Arpaci-Dusseau, "Operating Systems: Three Easy Pieces", Arpaci-Dusseau Books.

Referenslitteratur:

Andrew S. Tanenbaum, "Modern Operating Systems", Prentice-Hall. 

Examination

  • SEMA - Seminarium, 1,5, betygsskala: P, F
  • TENA - Tentamen, 6,0, betygsskala: A, B, C, D, E, FX, F

Examinator beslutar, i samråd med KTH:s samordnare för funktionsnedsättning (Funka), om eventuell anpassad examination för studenter med dokumenterad, varaktig funktionsnedsättning. Examinator får medge annan examinationsform vid omexamination av enstaka studenter.

Ges av

EECS/Datavetenskap

Examinator

Johan Montelius <johanmon@kth.se>

Övrig information

Kursen utvärderas och utvecklas i enlighet med KTH:s policy för Kursanalys. 

Påbyggnad

Operativsystemskursen ger dig kunskaper som är viktiga eller rent av nödvändiga för många fortsättningskurser där man på något sätt kommer att använda eller skriva systemnära programvara. I ICT-skolans kursutbud finns tre huvudspår för vilka operativsystemskursen är en rekommenderad eller obligatorisk förkunskap. Det handlar om:

  • Datorteknik som ger dig en inblick i hur moderna datorsystem är uppbyggda med fokus på hårdvaran. 
  • Programvarusystem som primärt handlar om språk och programvarusystem för distribuerade tillämpningar som t.ex peer-to-peer system. 
  • Tele- och datorkommunikationssystem som behandlar hur kommunikation i olika typer av nät som IP, trådlösa system mm. fungerar. 

Versionsinformation

Kursplan gäller från och med HT2019.
Examinationsinformation gäller från och med VT2019.