Computerarchitectuur en systeemsoftware
Inleiding
CASS is een vak dat gegeven wordt bij onze beste vrienden de Burgerlijk Ingenieurs, en dat dus zeer weinig winezen volgen. Het is een verplicht vak voor wiskunde en fysica afstudeerrichting informatica.
Het examen bestaat uit 2 delen: het eerste stuk is open boek en bestaat uit oefeningen, het tweede stuk is gesloten boek en is theorie.
Voor de oefeningen is er te weinig tijd. Werk dus door en stel uw prioriteiten. Voor de theorie is er veel schrijfwerk (reken op een 10 bladzijden tekst die je moet schrijven), en moet je alles uit de cursus kunnen combineren.
Zie ook (in examens en in de liefde is alles toegestaan) de VTK-site: https://www.vtk.be/examenvragen/vak.html?vakId=H1P5
24 januari 2007, 13u
Oefeningen
- Geef de toestand van de stack bij het begin van de volgende methodes. Er waren een aantal verschillende gevallen, zoals declaratie van lokale variabelen (int, char), character arrays, pointers naar globale character array, ...
- Zeg bij elk van volgende opeenvolging van memory reads of de cache een hit of een miss zal geven. Dit was opgesplitst in 3 stukken: een direct mapped cache met blokken van 1 word, een direct mapped cache met blokken van 2 words en een 3-way set associated cache met blocks van 2 words.
- Gegeven 2 object files (een main en een hulpmethode), vul in een tabel in met het uiteindelijke gelinkte programma. Analoog aan boek pagina 109, 'linking object files'.
- Een C methode (merge voor mergesort) is gegeven, zet om in MIPS. Dit was de grootste vraag en stond op de meeste punten.
- Gebruik de methode uit de vorige vraag om een volledige mergesort te schrijven (hierbij kwam dus nog eens recursiviteit kijken). De C code was gegeven.
Theorie
- is computerarchitectuur belangrijk voor een softwareontwerper? Geef uitgebreid antwoord, geef concrete voorbeelden, blabla, betrek heel de cursus in het antwoord.
- Verklaar 5 van de volgende 6 begrippen. Wees volledig: waar wordt het gebruikt, wanneer, voor-/nadelen, alternatieven, enz : lader, data hazards, interrupt, capacity miss bij caches, RAID 3, shortest job first.