Operating Systems, Voorjaar 2016
Docent: dr. K. F. D. Rietveld
Practicumassistenten: B. Peters, M. Faas, J. Koschny.
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.
Een speciaal ontwikkeld besturingssysteem zal de basis vormen voor het practicum. In het practicum wordt de besproken theorie over process management, virtual memory management en storage management in de praktijk gebracht. Hierbij zal ook worden gewerkt aan het verkrijgen van vaardigheden op het gebied van de ontwikkeling van operating system ("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.
Examinering
Schriftelijk aan het eind van het semester en met een practicum gedurende het semester. Het cijfer voor het vak wordt bepaald aan de hand van het tentamen (50%) en het practicum (50%). Zowel het tentamen als het eindcijfer voor het practicum moeten voldoende (≥ 5.5) zijn om een voldoende te behalen voor het vak. Het practicumcijfer is opgebouwd uit 4 opdrachten die elk met een eigen gewicht meetellen: (opdracht 1: 0.15, opdracht 2: 0.2, opdracht 3: 0.35 en opdracht 4: 0.3). Alle opdrachten moeten worden ingeleverd om een cijfer voor het practicum te kunnen krijgen.
Nieuws
3 augustus 2016: Het hertentamen is nagekeken. Hiermee zijn alle resultaten bekend.
28 juli 2016: Alle practicumopdrachten zijn nagekeken en de resultaten bekend gemaakt. De eindcijfers voor het tentamen zijn opgemaakt. In de komende dagen zullen de resultaten en eindcijfers voor het hertentamen volgen.
7 juni 2016: Opdracht 2 is nagekeken en de cijfers zijn ook gecommuniceerd per e-mail.
12 mei 2016: Een overzicht van secties uit het tekstboek die niet tot de tentamenstof behoren en een selectie van oefenopgaven uit het boek is hier te downloaden. Het is mogelijk om feedback te krijgen op gemaakte oefenopgaven. Het is dan wel van belang dat deze opgaven voor vrijdag 3 juni zijn ingeleverd per e-mail of postvak van de docent.
11 mei 2016: De resultaten van opdracht 1 zijn bekend. De cijfers zijn inclusief "review" per e-mail verstuurd naar het adres waarmee de opdracht was ingeleverd.
25 april 2016: opdracht 4 beschikbaar.
24 april 2016: Ook op dinsdag 26 april zal er een extra mogelijkheid zijn tot het stellen van vragen tussen 15:00 en 16:00 uur.
19 april 2016: Er zal op donderdagmiddag 28 april de mogelijkheid zijn tot het stellen van vragen over het practicum van 13:30 tot 14:30 uur. Assistent Peters en de docent zullen rondlopen door de verschillende computerzalen. Vanwege het werkcollege Algoritmiek dat op hetzelfde moment plaatsvindt is het niet mogelijk om een grote computerzaal te laten reserveren.
7 april 2016: Let op: het rooster is vanaf nu onregelmatig. Houd het weekschema in de gaten!
29 maart 2016: Opdracht 3 beschikbaar.
15 maart 2016: Opdracht 2 beschikbaar.
29 februari 2016: Let op: roosterwijziging, het werkcollege op woensdag 2 maart vervalt en we halen het hoorcollege naar voren. Op woensdag 2 maart zal er van 10:00 tot 11:00 en 11:15 tot 13:00 hoorcollege worden gegeven in zaal 174. Op woensdag 16 maart verzorgen we van 9:00 tot 9:45 een inleiding practicum in zaal 174, van 9:45 tot 13:00 zal het werkcollege plaatsvinden in de computerzalen.
18 februari 2016: Er is een mailing list in de maak voor het vak voor het stellen van vragen en dergelijke: https://groups.google.com/forum/#!forum/liacs-os-2016. Als je een Google account gebruikt, kun je je op die pagina aanmelden voor de lijst. Als je een niet-Google account gebruikt, stuur een e-mail naar liacs-os-2016+subscribe@googlegroups.com, met als onderwerp "subscribe" en zet in de e-mail je naam en studentnummer.
25 januari 2016: Website online. Let op: op woensdag 3 februari begint het eerste hoorcollege om 9:00 uur!.
Contact
De docent is bereikbaar middels e-mail naar krietvel (at) liacs.nl.