Operating Systems

Vakbeschrijving Operating Systems
Collegejaar: 2017-2018
Studiegidsnummer: 4032VI2OPY
Docent(en):
  • dr. K. Rietveld
Voertaal: Nederlands
Blackboard: Nee
EC: 6.0
Niveau: 200
Periode: Semester 2
Onderwijstijd in uren
(excl. zelfstudie):
55:00 uur
  • Wel Keuzevak
  • Wel Contractonderwijs
  • Wel Exchange
  • Wel Study Abroad
  • Geen Avondonderwijs
  • Geen A-la-Carte en Aanschuifonderwijs
  • Geen Honours Class

Toegangseisen

Aanbevolen voorkennis: Programmeertechnieken, Computerarchitectuur,
Datastructuren.

Beschrijving

Ten grondslag van alle software die op een computersysteem draait ligt het operating system, ofwel besturingssysteem. Het besturingssysteem heeft als doel een generieke interface te bieden voor allerhande software die op het systeem kan draaien. Deze software hoeft zich dan niet te bekommeren hoe de (specifieke) hardware van het systeem moet worden aangestuurd en hoe deze hardware moet worden gedeeld met verschillende stukken software die tegelijk op het systeem worden uitgevoerd. In dit laatste is het besturingssysteem verantwoordelijk voor het alloceren van 'resources' zoals CPU tijd, RAM geheugen en opslagruimte op harde schijven.

In deze cursus zullen de belangrijkste facetten van besturingssystemen worden bestudeerd: structuur van besturingssystemen, process management, memory management en storage management. Begrippen als system calls, virtual memory, device drivers, bootstrapping, scheduling, context switching, file systems en virtualization zullen de revue passeren.

In het practicum zullen een aantal aspecten van de besproken theorie in de praktijk worden gebracht. Hierbij zal ook worden gewerkt aan het verkrijgen van vaardigheden op het gebied van de ontwikkeling van operating systems ("low-level programming").

Leerdoelen

Het kunnen beschrijven hoe operating systems in het algemeen zijn gestructureerd. Standaard methoden en algoritmen die worden gebruikt in de implementatie van operating systems wat betreft process management, memory management en storage management kunnen uitleggen en toepassen. Verschillen tussen methodes en algoritmen kunnen toelichten en het kunnen maken van afwegingen tussen deze methodes en algoritmen voor gegeven scenario's. Het kunnen ontwerpen van nieuwe of aangepaste methoden of algoritmen voor gegeven scenario's. De opgedane kennis over operating systems kunnen toepassen in het uitvoeren van probleemanalyses. Het zelfstandig kunnen implementeren van basale algoritmen gebruikt in operating systems zoals process schedulers en block allocatie algoritmen. Het zelfstandig kunnen toevoegen en aanpassen van functionaliteiten van (simpele) operating systems.

Rooster

Het meest recente rooster is te vinden op de LIACS website

Onderwijsvorm

hoorcollege, werkcollege

Toetsing

De toetsing bestaat uit twee delen: een theoretisch en een praktisch deel. Het cijfer voor beide delen moet voldoende zijn om te kunnen slagen voor het vak.

Het theoretische deel wordt getoetst met een schriftelijk tentamen aan het eind van het semester en telt voor twee derde (2/3) mee. De tentamenstof zal bekend worden gemaakt op de website van het vak.

Het cijfer voor het praktische deel telt voor een derde (1/3) mee en zal worden bepaald aan de hand van drie programmeeropdrachten. Dit cijfer is een gewogen gemiddelde van de resultaten van deze opdrachten. De gewichten behorende bij de opdrachten worden bekend gemaakt op de website van het vak.

Literatuur

Operating System Concepts, 9th Edition (International Student Version). Abraham Silberschatz, Peter B. Galvin, Greg Gagne. 2014. Wiley Publishing.

Aanmelden

Aanmelden via Usis: Selfservice > Studentencentrum > Inschrijven
Activiteitencodes te vinden via de facultaire website

Voor studenten die niet staan ingeschreven voor de bachelor Informatica is er een beperkte capaciteit. Neem contact op met de studieadviseur.

Contact

Onderwijscoördinator Informatica, Riet Derogee

Website

Operating Systems

Talen