Besturingssystemen (B-KUL-G0Q35A)

6 studiepuntenNederlands60 urenEerste semesterUitgesloten voor examencontract
Piessens Frank (coördinator) |  Piessens Frank |  Van Bulck Jo (plaatsvervanger) |  Van Bulck Jo
POC Informatica

Na de studie van deze cursus moet de student:

  • de doelstellingen van een besturingssysteem kunnen aangeven;
  • de minimale hardware-ondersteuning (interruptmechanisme, geheugenbescherming, ...) kennen die nodig is om een modern besturingssysteem te kunnen uitvoeren;
  • de componenten van een besturingssysteem (functioneel) kunnen beschrijven;
  • de verschillende ontwerpmethodologieën kunnen uiteenzetten;
  • de voornaamste algoritmes die gebruikt worden bij de implementatie van die componenten kunnen beschrijven, hun voor- en nadelen tegenover elkaar kunnen afwegen en de nodige hardware-ondersteuning kunnen aangeven;
  • een verantwoorde keuze kunnen maken tussen deze algoritmes op basis van bepaalde criteria en de beschikbare hardware;
  • parallelle samenwerkende programma's kunnen ontwerpen en daarbij de nodige synchronisatie-opdrachten voorzien;
  • besturingssystemen met elkaar kunnen vergelijken en een verantwoord advies kunnen geven;
  • de implementatie van een simpel educatief besturingssysteem kunnen begrijpen;
  • eenvoudige aanpassingen en uitbreidingen van een simpel educatief besturingssystemen kunnen maken;
  • kunnen werken op een laag-niveau in de programmeertaal C, inclusief geheugen manipuleren.

Er wordt verondersteld dat de student voldoende kennis heeft over de werking van een computer en zijn randapparatuur. Tevens wordt verwacht dat de student kennis heeft van een procedurele en/of objectgeoriënteerde programmeertaal.

Dit opleidingsonderdeel is identiek aan de volgende opleidingsonderdelen:
X0A48A : Besturingssystemen

Onderwijsleeractiviteiten

4 sp. Besturingssystemen (B-KUL-G0Q35a)

4 studiepuntenNederlandsWerkvorm: College30 urenEerste semester
Piessens Frank |  Van Bulck Jo (plaatsvervanger) |  Van Bulck Jo
POC Informatica

1) Inleiding: Wat is een besturingssysteem? Evolutie van besturingssystemen. Verschillende types van besturingssystemen.
2) Algemene structuur v/e besturingsprogramma: Componenten, diensten, system calls, systeemprogramma's, structuur, virtuele machines, ontwerp en ontwikkeling, installatie.
3) Processen: Concept, proces scheduling, operaties op processen, samenwerkende processen, threads, interprocescommunicatie
4) Threads: concepten, multithreading modellen, threading issues
5) CPU scheduling: Concepten, criteria, algoritmes, evalutatie.
6) Processynchronisatie: Achtergrond, kritische sectie probleem, synchronisatie HW, semaforen, klassieke synchronisatieproblemen, kritische gebieden, monitors.
7) Impasses (Deadlocks): karakterisatie, methodes om impasses te behandelen: preventie, vermijden, detecteren en herstellen.
8) Geheugenbeheer: Achtergrond, logische en fysische adresruimte, swapping, aaneengesloten allocatie, paginatie, segmentatie, gepagineerde segmentatie.
9) Virtueel geheugen: Achtergrond, paginatie op aanvraag, performantie, vervanging van pagina's, vervangingsalgoritmes, allocatie van frames, thrashing.
10) Bestandensysteem: Bestand, toegangsmethodes, directory structuur, bescherming, consistentie.
11) Implementatie v/e bestandensysteem: Structuur v/e bestandensysteem, allocatiemethodes, beheer van de vrije ruimte, implementatie van directories, efficiëntie en performantie, herstelprocedures.
12) Secundair geheugenbeheer: Structuur v/e schijf, disk scheduling, beheer v/d schijf, beheer v/d swap-ruimte, betrouwbaarheid, stabiel geheugen.
13) I/O systemen: I/O hardware, I/O Interface, interrupts, kernel I/O subsysteem
14) Protectie: Doelstellingen, protectiedomein, toegangsmatrix, implementatie v/d toegangsmatrix, revocatie van rechten, capability-gebaseerde systemen, taalgebaseerde bescherming.
15) Beveiliging: Beveiligingsprobleem, oorzaken, beveiligingsbeleid, "opzettelijke" bedreigingen, authenticatie, maatregelen, cryptografie.
16) Case studies: Windows en Linux.

Handboek: Operating Systems: Three Easy Pieces (Remzi H. Arpaci-Dusseau and Andrea C. Arpaci-Dusseau)

2 sp. Besturingssystemen: practica (B-KUL-G0Q36a)

2 studiepuntenNederlandsWerkvorm: Practicum30 urenEerste semester
Piessens Frank |  Van Bulck Jo (plaatsvervanger)
POC Informatica

De oefenzittingen behandelen de volgende topics:

•    Het gebruik van C in low-level kernel code
•    Het gebruik van system calls
•    De implementatie van nieuwe system calls
•    Het beheer van virtueel en fysiek geheugen
•    Het afhandelen van traps (interrupts en excepties) in de kernel
•    Procesbeheer
•    Synchronisatie in de kernel
•    File systems
 

Evaluatieactiviteiten

Evaluatie: Besturingssystemen (B-KUL-G2Q35a)

Type : Partiële of permanente evaluatie met examen tijdens de examenperiode
Evaluatievorm : Mondeling, Schriftelijk, Paper/Werkstuk, Ontwerp/Product
Leermateriaal : Geen


Evaluatie gebeurt aan de hand van permanente evaluatie voor de practica, en een afrondend schriftelijk examen in de zittijd.

Indien de evaluatie aantoont dat de student één of meerdere doelstellingen van het opleidingsonderdeel onvoldoende heeft bereikt, kan het globale resultaat afwijken van het gewogen gemiddelde van de onderdelen.

 

Het afrondend schriftelijk examen in de derde examenperiode heeft dezelfde vorm als het examen in de eerste examenperiode.

Belangrijk: De practica kunnen niet ingehaald worden tijdens de derde examenperiode.