Ga naar de inhoud
Informatica · Klas 5 VWO · Computerarchitectuur en Besturingssystemen · Periode 4

Programma's Tegelijk Draaien

Leerlingen begrijpen hoe een besturingssysteem meerdere programma's tegelijk kan laten draaien, zelfs op één processor.

SLO Kerndoelen en EindtermenSLO: Onderbouw - BesturingssystemenSLO: Onderbouw - Interactie

Over dit onderwerp

Programma's tegelijk draaien legt uit hoe een besturingssysteem meerdere programma's tegelijk laat lopen op één processor. Dit lukt door timesharing: de processor deelt CPU-tijd toe aan processen via een scheduler die razendsnel schakelt tussen taken. Leerlingen in klas 5 VWO ontdekken hoe context switching werkt, prioriteiten worden bepaald en resources zoals geheugen worden gedeeld. Ze beantwoorden vragen als: hoe kan een computer muziek afspelen en internetten tegelijk, en wat gebeurt er bij veel open programma's?

Dit past perfect in de unit Computerarchitectuur en Besturingssystemen, periode 4, en sluit aan bij SLO-kerndoelen voor onderbouw over besturingssystemen en interactie. Het verbindt algoritmisch denken met hardware-realiteit en bereidt voor op geavanceerde onderwerpen zoals threads en virtueel geheugen. Leerlingen leren systemen analyseren, een kernvaardigheid in informatica.

Actieve leerbenaderingen werken hier uitstekend omdat abstracte concepten zoals scheduling concreet worden door simulaties en demonstraties. Leerlingen maken de illusie van gelijktijdigheid zelf mee, wat begrip verdiept, misverstanden oplost en motivatie verhoogt door directe ervaring.

Kernvragen

  1. Hoe kan een computer meerdere dingen tegelijk doen, zoals muziek afspelen en internetten?
  2. Wat gebeurt er als je veel programma's tegelijk opent?
  3. Waarom lijkt het alsof de computer alles tegelijk doet?

Leerdoelen

  • Verklaar de rol van de scheduler bij het toewijzen van CPU-tijd aan verschillende processen.
  • Demonstreer het concept van context switching met een gesimuleerd scenario.
  • Analyseer de impact van procesprioriteiten op de reactietijd van een besturingssysteem.
  • Vergelijk de efficiëntie van verschillende scheduling-algoritmes (bijvoorbeeld FCFS versus Round Robin) in termen van doorvoer en wachttijd.
  • Identificeer potentiële conflicten bij het delen van systeembronnen (CPU, geheugen) tussen concurrerende processen.

Voordat je begint

Basisprincipes van Programma's en Uitvoering

Waarom: Leerlingen moeten begrijpen wat een programma is en hoe het wordt uitgevoerd om de concepten van processen en multitasking te kunnen plaatsen.

Hardwarecomponenten van een Computer

Waarom: Kennis van de CPU en geheugen is essentieel om te begrijpen hoe deze bronnen worden gedeeld en beheerd door het besturingssysteem.

Kernbegrippen

ProcesEen actief programma dat door het besturingssysteem wordt beheerd. Elk proces heeft zijn eigen geheugenruimte en systeembronnen.
SchedulerOnderdeel van het besturingssysteem dat bepaalt welk proces als volgende de CPU krijgt toegewezen en voor hoe lang.
TimesharingEen methode waarbij de CPU-tijd wordt verdeeld over meerdere processen, waardoor de illusie van gelijktijdigheid ontstaat.
Context SwitchingHet proces waarbij het besturingssysteem de toestand van een lopend proces opslaat en de toestand van een ander proces laadt om de uitvoering ervan voort te zetten.
ProcesprioriteitEen waarde die aangeeft hoe belangrijk een proces is. Processen met een hogere prioriteit krijgen doorgaans sneller toegang tot de CPU.

Pas op voor deze misvattingen

Veelvoorkomende misvattingEen computer voert alle programma's echt tegelijk uit op één processor.

Wat je in plaats daarvan kunt onderwijzen

Het besturingssysteem creëert een illusie door timesharing en snelle context switching. Actieve simulaties zoals kaartschakelingen laten leerlingen dit zelf ervaren, waardoor ze het verschil tussen parallelle en seriële verwerking begrijpen.

Veelvoorkomende misvattingMultitasking vereist altijd meerdere processoren.

Wat je in plaats daarvan kunt onderwijzen

Zelfs op één core beheert de scheduler taken via tijdsslots. Groepsdemo's met Task Manager tonen dit live, en helpen leerlingen prioritering en overhead te zien in praktijk.

Veelvoorkomende misvattingMeer RAM lost altijd multitasking-problemen op.

Wat je in plaats daarvan kunt onderwijzen

RAM helpt bij geheugen, maar CPU-bottlenecks blijven door scheduling. Rolspelen maken dit duidelijk, zodat leerlingen resources onderscheiden en systeemprestaties analyseren.

Ideeën voor actief leren

Bekijk alle activiteiten

Verbinding met de Echte Wereld

  • Softwareontwikkelaars bij game-ontwikkelingsstudio's zoals Guerrilla Games gebruiken hun kennis van besturingssystemen om ervoor te zorgen dat grafisch intensieve games soepel draaien, zelfs wanneer er meerdere achtergrondprocessen actief zijn.
  • Systeembeheerders in datacenters, zoals die van Leaseweb, moeten de prestaties van servers optimaliseren door processen efficiënt te plannen, zodat honderden of duizenden gebruikers tegelijkertijd toegang hebben tot webapplicaties.
  • Bij de ontwikkeling van embedded systemen, zoals in moderne auto's van fabrikanten als Stellantis, is het cruciaal dat verschillende functies (navigatie, entertainment, motorbeheer) gelijktijdig en betrouwbaar opereren dankzij effectieve multitasking.

Toetsideeën

Uitgangskaart

Geef leerlingen een scenario met drie processen (bijv. tekstverwerker, muziekspeler, webbrowser) met verschillende prioriteiten. Vraag hen om in 2-3 zinnen uit te leggen welk proces waarschijnlijk het eerst de CPU krijgt en waarom, en wat er gebeurt tijdens een context switch tussen de tekstverwerker en de muziekspeler.

Snelle Controle

Toon een eenvoudige simulatie van Round Robin scheduling op het bord of via een tool. Vraag leerlingen: 'Als de tijdskwant 2 eenheden is, welke processen zijn dan actief na 5 eenheden?' en 'Welk proces heeft de langste wachttijd tot nu toe?'

Discussievraag

Stel de vraag: 'Waarom lijkt het voor een gebruiker alsof de computer alles tegelijk doet, terwijl er in werkelijkheid snelle wisselingen plaatsvinden?'. Laat leerlingen in kleine groepen brainstormen en hun conclusies delen, waarbij ze minimaal twee kernbegrippen uit de les gebruiken.

Veelgestelde vragen

Hoe werkt timesharing in een besturingssysteem?
Timesharing deelt CPU-tijd in kleine slices toe aan processen via de scheduler. Elke taak krijgt beurtelings tijd, wat schijnbaar gelijktijdig werk geeft. Context switching slaat de staat van een proces op en laadt de volgende. Dit is cruciaal voor responsive systemen, zelfs op single-core hardware.
Wat is context switching bij multitasking?
Context switching wisselt de processorstatus tussen processen: registers, program counter en geheugencontext worden opgeslagen en hersteld. Dit gebeurt in milliseconden, maar overhead bouwt op bij veel taken. Leerlingen zien dit in demo's als reactietijd vertraagt.
Hoe kan actieve learning helpen bij begrijpen van programma's tegelijk draaien?
Actieve methoden zoals scheduler-simulaties met kaarten of live Task Manager-demo's maken abstracte switching tastbaar. Leerlingen ervaren zelf de illusie en limieten, wat diep begrip bouwt. Groepsdiscussies verbinden observaties met theorie, misverstanden corrigeren en betrokkenheid verhogen door hands-on praktijk.
Wat gebeurt er als je te veel programma's tegelijk opent?
De scheduler raakt overbelast: context switches vertragen, CPU-gebruik maxxet en het systeem wordt traag of crasht. Swap-geheugen helpt tijdelijk, maar prioritering faalt. Dit illustreert resourcebeheer; test het veilig met lichte apps voor lesinzichten.