Bijles besturingssystemen in het eerste jaar
Wat er onder je programma gebeurt, en waarom dat soms misloopt.
Ook gekend als Besturingssystemen, Operating Systems, Systeemsoftware, Systeemprogrammeren.
Bijles besturingssystemen kost €15 tot €35 per uur en gaat online door, met een gedeelde terminal als je met C werkt.
Dit vak legt uit wat er gebeurt tussen jouw code en de hardware. Voor veel studenten is het het eerste vak waar ze moeten nadenken over dingen die tegelijk gebeuren, en dat is een nieuwe manier van redeneren.
Concurrency is dan ook het onderdeel waar de meeste punten verloren gaan. Een redenering die klopt voor één uitvoeringsvolgorde, klopt daarom nog niet voor alle volgordes.
Wie krijgt dit vak?
Besturingssystemen staat in het eerste jaar van onder meer deze opleidingen. Zit je richting er niet bij? De leerstof overlapt meestal sterk, dus de pagina blijft bruikbaar.
- Informatica
- Burgerlijk ingenieur computerwetenschappen
- Industrieel ingenieur informatica
- Toegepaste informatica
De leerstof, en waar het precies misgaat
Per hoofdstuk staat hieronder niet alleen wat het inhoudt, maar vooral waar studenten er punten op verliezen. Dat is meestal iets anders dan waar ze denken dat het misgaat.
Processen en threads
Het verschil in wat gedeeld wordt. Studenten kennen de definitie maar kunnen niet voorspellen welke variabele wel en niet gedeeld is, en dat bepaalt alles.
Scheduling
Algoritmen zoals round robin en shortest job first. De oefening is meestal een tijdlijn tekenen, en de fout zit in het moment waarop een proces aankomt.
Synchronisatie
Semaforen en mutexen. De klassieke examenvraag is een scenario construeren waarin de gegeven oplossing faalt, wat veel moeilijker is dan de oplossing lezen.
Deadlock
De vier voorwaarden en hoe je ze doorbreekt. Studenten leren de voorwaarden op maar herkennen een deadlock niet in een concrete situatie.
Geheugenbeheer
Paginering en virtueel geheugen. Adresvertaling stap voor stap uitvoeren is standaard examenstof en puur precisiewerk.
Bestandssystemen en I/O
Hoe bestanden op schijf georganiseerd zijn. Vaak achteraan de cursus en daardoor zwak gekend, terwijl de vragen erover eenvoudig zijn.
Waarom besturingssystemen zwaar is in het eerste jaar
- Redeneren over gelijktijdigheid is fundamenteel anders dan redeneren over code die stap voor stap loopt.
- Bugs in concurrency zijn niet reproduceerbaar, dus je kan ze niet wegdebuggen zoals gewone fouten.
- Het vak zit dicht bij de hardware en gebruikt vaak C, wat voor studenten die met Python begonnen een extra drempel is.
- Veel begrippen lijken abstract tot je ze op een concreet scenario toepast, en dat gebeurt in de cursus te weinig.
Hoe het examen er meestal uitziet
Examenvorm
Schriftelijk, met een schedulingoefening, een synchronisatievraag waarin je een fout scenario moet vinden of een correcte oplossing schrijven, en een adresvertaling. Daarnaast theorievragen. Concurrency weegt bijna altijd het zwaarst.
Zo pak je het aan
- Teken bij synchronisatievragen expliciet twee uitvoeringsvolgordes uit. De fout zit in de volgorde die je niet bekeek.
- Oefen schedulingtijdlijnen op papier tot ze foutloos gaan. Het is mechanisch werk met zekere punten.
- Leer de vier deadlockvoorwaarden en zoek er per voorwaarde een concreet voorbeeld bij.
- Voer adresvertaling stap voor stap uit en schrijf elke tussenstap op. Hoofdrekenen is hier de hoofdoorzaak van fouten.
Nederlandstalige docenten voor besturingssystemen
Deze docenten zijn geverifieerd en geven les in het Nederlands. Je spreekt zelf af wanneer het past, ook tijdens de examenperiodes.
Veelgestelde vragen over bijles besturingssystemen
Waarom lukken mijn synchronisatieantwoorden niet?
Meestal omdat er maar één uitvoeringsvolgorde bekeken wordt. Het examen vraagt of het in alle volgordes klopt, en dat vergt dat je bewust de vervelendste volgorde opzoekt.
Moet ik goed zijn in C?
Basiskennis van pointers helpt sterk, maar de examens toetsen vooral het concept. Als C je afremt, pakken we dat eerst apart aan zodat het niet je begrip vertroebelt.
Is dit nuttig als ik later webontwikkeling doe?
Ja, meer dan het lijkt. Threads, geheugen en blokkerende operaties komen terug zodra je met servers werkt, en dan is dit de kennis die je onderscheidt.
Vakken die hier vaak bij horen
Wie voor besturingssystemen bijles zoekt, zit vaak ook met een van deze vakken in hetzelfde semester.
Klaar om te beginnen?
Je kiest zelf je docent en spreekt rechtstreeks af wat je wil aanpakken. De eerste kennismaking is bij veel docenten gratis, zodat je kan aftoetsen of het klikt voor je iets betaalt.
Bekijk docenten voor besturingssystemen