🖥️ Wat is een operating system?
De onzichtbare manager die jouw computer laat werken — en waarom Linux op elke server draait.
De onzichtbare manager
Je typt een tekst in Word, terwijl Spotify muziek speelt en je browser een video laadt. Hoe weet je computer wie wanneer gebruik mag maken van de processor, het geheugen en de schijf?
Dat regelt het operating system (OS) — het programma dat altijd op de achtergrond draait en al het andere software laat werken.
- 🔄 Processen beheren — meerdere programma's tegelijk laten draaien
- 💾 Geheugen verdelen — elk programma krijgt zijn eigen stukje RAM
- 📁 Bestandssysteem — bestanden opslaan, lezen en organiseren
- 🖨️ Hardware aansturen — via drivers communiceren met hardware
- 🔒 Beveiliging — gebruikers en rechten beheren
De kernel: hart van het OS
Een OS bestaat uit veel lagen. De kernel is de binnenste laag — het enige deel dat direct met de hardware praat. Alles wat jij ziet (desktop, apps, terminal) is een laag bovenop de kernel.
Wanneer je in de terminal ls typt, vraagt de shell via een system call aan de kernel om de bestanden te lezen. De kernel communiceert met de schijf en stuurt de lijst terug. Jij ziet alleen het resultaat.
Processen, geheugen en bestandssysteem
Drie kernconcepten die je als ontwikkelaar moet kennen:
Een proces is een draaiend programma. Elke app die je opent wordt een apart proces met zijn eigen ID (PID).
- • Je browser heeft tientallen processen tegelijk (één per tabblad)
- • Het OS schakelt razendsnel tussen processen — zo snel dat het gelijktijdig lijkt
- • Als een proces crasht, pakt het OS dat op zonder de rest te raken
Het OS verdeelt het RAM tussen alle processen. Elk proces krijgt zijn eigen afgeschermd stuk — zo kunnen processen elkaar niet per ongeluk overschrijven.
- • RAM is snel maar tijdelijk: bij afsluiten is alles weg
- • Als RAM vol is, gebruikt het OS de schijf als "noodgeheugen" (swap) — dat is trager
- • Een Symfony-app die te veel geheugen vraagt, wordt door het OS gestopt (OOM killer)
Het bestandssysteem organiseert hoe data op de schijf wordt opgeslagen en teruggevonden. Het is de mappenstructuur die jij kent.
Linux kent geen C:-schijf. Alles begint bij / (root). Dat leer je in les 3.
Als webontwikkelaar draai jij apps op een Linux-server. Als je Symfony crasht, wil je weten welk proces het is, hoeveel geheugen het vreet en welke logbestanden je moet lezen. Dat leer je in les 7.
Windows vs macOS vs Linux
Drie grote besturingssystemen, drie werelden. Als ontwikkelaar kom je ze alle drie tegen.
Linux is de kernel — maar je installeert een distributie (distro): de kernel + gereedschap + pakketbeheer.
De kans is groot dat jij thuis Windows of macOS gebruikt, maar dat jouw stage-server Ubuntu of Debian draait. Deze track leert je exact genoeg Linux om op die server te werken.