2015V_nn104.87 KB - NO

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