Deze website gebruikt cookies (en daarmee vergelijkbare technieken) om het bezoek voor u nog makkelijker en persoonlijker te maken. Met deze cookies kunnen wij en derde partijen uw internetgedrag binnen en buiten onze website volgen en verzamelen.
Hiermee kunnen wij en derde partijen advertenties aanpassen aan uw interesses en kunt u informatie delen via social media.
Klik op 'Ik ga akkoord' om cookies te accepteren en direct door te gaan naar de website of klik op om uw voorkeuren voor cookies te wijzigen. Bekijk onze privacyverklaring voor meer informatie.
$altText
Besturingssystemen
Informatica en informatiekunde | 5 EC | Voor dit product gelden ingangseisen
Code IB1302
Prijsindicatie € 324
Deze cursus heeft een vast startmoment. Kijk in het Jaarrooster wanneer de cursus van start gaat en wanneer de begeleiding is ingeroosterd.

Algemeen

Inhoud

Elke moderne computer wordt bestuurd door een besturingssysteem. Bekende besturingssystemen zijn Windows, macOS, Android, iOS, Linux, BSD en UNIX. Het besturingssysteem omvat de software die de gebruikersinterface naar de gebruikers verzorgt en die de toegang tot de beschikbare hardware regelt voor programma’s. Hierbij wordt ook beperkt ingegaan op het ontwerp van moderne processoren, om goed de interactie tussen besturingssystemen en de hardware te kunnen begrijpen. In de cursus ligt de nadruk op het besturen van processen die door de computer uitgevoerd worden en op het beheer van geheugen, het bestandssysteem en de verschillende apparatuurcomponenten in een computer.

Na een algemene introductie worden de begrippen proces en thread behandeld. Dit zijn de basiseenheden om gelijktijdig programmatuur uit te voeren. Elk programma dat uitgevoerd wordt, bestaat uit ten minste één proces, en binnen een proces wordt er vaak gewerkt met meerdere threads (voorbeeld: bij video worden geluid en beeld vaak in aparte threads gelijktijdig gedecodeerd). Begrippen als parallelisme en concurrency spelen hierbij een grote rol. Met behulp van deze bouwstenen gaan we kijken naar allerlei mogelijke problemen bij het tegelijk uitvoeren en het samenwerken van programmatuur, zoals bijvoorbeeld deadlock en starvation. Om deze problemen goed te kunnen begrijpen, wordt er ingegaan op hoe een processor daadwerkelijk is opgebouwd, de zogenoemde processorarchitectuur.

Een ander aspect dat het besturingssysteem onder zijn beheer heeft is het geheugen. Doorgaans is het fysiek aanwezig geheugen (geadresseerd door fysieke geheugenadressen) te klein om het besturingssysteem zelf, de overige systeemsoftware en alle gebruikerstoepassingen onder te brengen. Vandaar dat er bij de meeste systemen gebruik wordt gemaakt van virtueel geheugen (geadresseerd door logische geheugenadressen) dat vele malen groter kan zijn dan het fysieke geheugen en dat gebruikmaakt van achtergrondgeheugen (meestal een harde schijf of Flash-geheugen). Delen van programma's kunnen in het fysieke geheugen worden geplaatst en delen op het achtergrondgeheugen. De noodzakelijke hardwareondersteuning om het moderne geheugensysteem correct en snel te laten functioneren komt tevens aan bod.

Programma's en gegevens worden opgeslagen als bestanden op de harde schijf. Ook hiervoor is een mechanisme nodig om bestanden aan te maken, te bewerken en te verwijderen. Dit is het bestandsbeheersysteem. Het bestandsbeheersysteem draagt ook zorg voor de logische bestandsopslagstructuur die gebruikmaakt van directories, en voor de vertaling daarvan naar de fysieke opslag op het achtergrondgeheugen.

Ten slotte wordt het input-output-systeem behandeld. Zonder een dergelijk systeem kan de computer niet met de buitenwereld communiceren. Randapparatuur, zoals beeldscherm, toetsenbord, muis, en printers moet kunnen worden aangesloten. Interne onderdelen van de computer maken echter ook gebruik van het input-output-systeem. Te denken valt aan schijven de grafische controller. Ook hierbij is kennis van de onderliggende processorarchitectuur essentieel.

Om de kennis over besturingssystemen ook in de praktijk toe te passen maken twee practica deel uit van de cursus Besturingssystemen. In het Linux-practicum ziet de student hoe Linux omgaat met processen en met het bestandsbeheersysteem en maakt kennis met de specifieke eigenschappen van een commandoregelgestuurd besturingssysteem. In het Windows-practicum bestudeert de student daarnaast een aantal specifieke karakteristieken van een grafisch besturingssysteem, en wel aan de hand van de grafische schil in Windows; bij het practicum wordt een aantal in de programmeertaal 'C' geschreven programma's gebruikt.

Leerdoelen
Na het bestuderen van de cursus wordt verwacht dat u:
- de betekenis en functie van een besturingssysteem kunt plaatsen bij een computersysteem in relatie tot de gebruiker en in relatie tot de toepassingen die verwerkt worden door dat computersysteem;
- inzicht hebt in hoe processen en threads schijnbaar of daadwerkelijk gelijktijdig (parallelisme vs concurrent) door een processor kunnen worden uitgevoerd, waarbij zaken als scheduling en de context switch een rol spelen;
- inzicht heeft hoe een processor daadwerklijk een computerprogramma uitvoert, en welke vertaalslagen daarvoor nodig zijn;
- weet welke aspecten naar voren komen, welke problemen kunnen optreden en de oplossingen daarvoor kent, wanneer processen met elkaar communiceren en/of van dezelfde bronnen gebruik wensen te maken;
- inzicht hebt in diverse technieken voor geheugenbeheer en hoe deze kunnen worden aangewend om een virtueel geheugen te realiseren; alsmede hoe in hardware met geheugen omgegaan wordt;
- weet welke plaatsings- en vervangingsalgoritmen er bestaan en wat hun voordelen en nadelen zijn;
- inzicht hebt hoe een bestandsbeheersysteem werkt;
- weet op welke wijze, via een input/outputsysteem, communicatie met randapparatuur plaatsvindt op besturingssysteemniveau en op hardwareniveau.

Aanmelden

Ingangseisen

Aanmelden voor deze cursus kan pas nadat u de propedeusecursussen en de cursus Datastructuren en algoritmen (IB1502) heeft afgerond of daarvoor bent ingeschreven of vrijgesteld conform uw online studiepad.

Toelichting aanmelden

Deze cursus is reeds gestart en wordt pas in het volgend academisch jaar opnieuw aangeboden.

De cursus wordt éénmaal per academisch jaar aangeboden.

Voorkennis

Om deze cursus met succes te kunnen volgen, moet u over voldoende programmeerkennis en -vaardigheid beschikken, bv. Java-kennis (op het niveau van de cursus Objectgeoriënteerd programmeren in Java 2). Omdat een Engelstalig tekstboek wordt gebruikt, is goede Engelse leesvaardigheid vereist.

Begeleiding

Begeleidingsvorm

Deze cursus heeft een vast startmoment. Kijk in het Jaarrooster wanneer de cursus van start gaat en wanneer de begeleiding is ingeroosterd.

Een aantal virtuele begeleidingbijeenkomsten.

Begeleidingsbijeenkomsten


Online bijeenkomsten
Kwartiel 2 - begeleider: dhr. dhr. drs. B. van Gastel
1. wo 27-11-2019 / 19.30-21.00 uur
2. wo 11-12-2019 / 19.30-21.00 uur
3. wo 15-01-2020 / 19.30-21.00 uur

Docenten

Dhr. dr. B. van Gastel.

Bereikbaarheidsoverzicht

Bereikbaarheidsinformatie docenten/examinatoren

Tentamen

Tentamenvorm

Regulier schriftelijk tentamen bestaande uit open vragen (ov) en een opdracht.

Tentamentoelichting

U dient zelf tijdig aan te melden voor een tentamen.

Er zijn een aantal opdrachten, die met elke computer uit te voeren zijn. In deze opdrachten ga je aan de slag met het direct aanspreken van een modern besturingssysteem. Geadviseerd wordt om eerst de opdrachten af te ronden alvorens het tentamen af te leggen.

Tentamendata

Schriftelijk tentamen: 26-08-2019, 03-02-2020, 22-04-2020, 24-08-2020.
Opdracht: volgens afspraak.

Tentamenhulpmiddelen

Een 'schoon' verklarend Nederlands woordenboek (op eigen risico)

Meer info

Meer informatie

Voor een inkijkje in de cursus, ga naar de snapshot van de voorgaande cursus (T27231 Besturingssystemen).

Cursusmateriaal

De cursus bestaat uit een Engelstalig tekstboek en een tweetal Nederlandstalige werkboeken.
Het tekstboek is: Operating System Concepts, International Student Version, 9th editions (Wiley).

Mediagebruik

Voor het uitvoeren van de opdrachten is een computer met het programma VirtualBox vereist.

Digitale leeromgeving

Bij de cursus hoort een cursussite in de digitale leeromgeving. U vindt daar actuele studie-informatie, aanvullend cursusmateriaal en voorzieningen voor communicatie en discussie met docent en medestudenten.