Institutt for Datateknikk og Informasjonsvitskap Eksamensoppgåve i TDT4186 Operativsystem Fagleg kontakt under eksamen: Mads Nygård Tlf.: 905 96 534 Eksamensdato: 22. mai 2015 Eksamenstid (frå-til): 09:00-13:00 Hjelpemiddelkode/Tillatne hjelpemiddel: D: Ingen prenta eller handskrive hjelpemiddel tillatne. Bestemt, enkel kalkulator tillaten. Annan informasjon: Det ønskjas korte og konsise svar på kvar av oppgåvene. Les oppgåveteksten meget nøye, og vurder kva det spørjast etter i kvar enkelt oppgåve. Dersom du meiner at opplysninga manglas i oppgåveteksten, angje de føresetnadene du gjer. Kvar av de fem oppgåvene tel like mykje, og kvar av dei fire deloppgåvene tel like mykje. Målform/språk: Norsk nynorsk Sidetal (utan framside): 2 Sidetal vedlegg: 0 Kontrollert av: ____________________________ Dato Sign. ___________________________________________________________________________________________ Merk! Studentane finn sensur i Studentweb. Har du spørsmål om sensuren må du kontakte instituttet ditt. Eksamenskontoret vil ikkje kunne svare på slike spørsmål. Oppgåve 1: Operativsystem (Operating Systems) a) Angje kort kvifor vi treng operativsystem – og kva som skil dei frå andre store programvaresystem b) Diskuter kort ulike typar operativsystem som typisk er i bruk – og kva som skil dei frå kvarandre c) Angje kort typiske modellar for prosesstilstandar i operativsystemsamanheng – og kva som er skilnaden mellom prosess-skifte og modus-skifte d) Diskuter kort ulike måtar å organisere operativsystem på – og fordelar og ulemper med mikrokjernebaserte operativsystem Oppgåve 2: Synkronisering av prosessar (Process Synchronization) a) Angje kort kva gjensidig utelukking (Mutual Exclusion) er – og kvifor operativsystem må tilby mekanismar for det b) Diskuter kort skilnaden mellom aktiv venting og passiv venting i operativsystemsamanheng – og når vi må og kan nytte kvar av de to variantane c) Diskuter kort skilnadane mellom å umogeleggjere vranglåsar (Deadlock Prevention), å unngå vranglåsar (Deadlock Avoidance), og å oppdage og rette opp vranglåsar (Deadlock Detection) – samt fordelar og ulemper med kvar av dei tre måtane å handtere vranglåsar på d) Beskriv heilt konkret korleis ein Bunden Buffer (Bounded Buffer) kan implementerast med monitorar (Monitors) Oppgåve 3: Handtering av lager (Memory Management) a) Angje kort kva virtuelt minne (Virtual Memory) er – og kvifor operativsystem må tilby mekanismar for det b) Diskuter kort korleis Buddy-system verker – og på kva måtar dei kan seiast å kombinere dynamisk partisjonering (Dynamic Partitioning) og fast partisjonering (Fixed Partitioning) i operativsystemsamanheng c) Diskuter kort kvifor algoritmar for sideutbytting (Page Replacement) er så viktege i operativsystemsamanheng – og angje kort nokre gode algoritmar for sideutbytting i eksisterande operativsystem d) Beskriv heilt konkret korleis 2-Sjansar algoritmen (CLOCK/U-CLOCK) for sideutbytting verker Oppgåve 4: Tidsstyring av prosessar (Process Scheduling) a) Angje kort ulike mål for tidsstyring av prosessar – og korleis system med sanntidsfokus har andre mål enn system utan sanntidsfokus b) Diskuter kort ekstra utfordringar som respektive multiprosessorarkitekturar (Multiprocessor Architectures) og multikjernearkitekturar (Multicore Architectures) byr på i operativsystemsamanheng – og angje kort nokre typiske relevante måtar å løyse dei på c) Diskuter kort kva som meinast med invertering av prioritetar (Priority Inversion) – og når og kvifor dette typisk brukast d) Beskriv heilt konkret korleis Høgste-Responsforhold-Først algoritmen (Highest Response Ratio Next) verker Oppgåve 5: Handtering av I/O (I/O Management) a) Angje kort ulike måtar å tene samtidige diskførespurnader på – og ulike resultatparametre dette har innverknad på b) Diskuter kort skilnadane mellom bruk av samanhengande einingar (Contiguous Allocation), kjeda einingar (Chained Allocation) og indekserte einingar (Indexed Allocation) – samt fordelar og ulemper med kvar av dei tre måtane å handtere plassallokering på diskar på c) Diskuter kort skilnadane mellom eksplisitt I/O basert på programkode i brukarprosessar og implisitt I/O basert på systembehov ifm virtuelt minne – og angi kort kvifor Minst-NylegReferert algoritmen (Least Recently Used) er meir aktuell som algoritme ifm eksplisitt I/O enn ifm implisitt I/O d) Beskriv heilt konkret korleis Frekvensbasert-Stakk algoritmen (Frequency-BasedReplacement) verker ifm med I/O caching
© Copyright 2024