Datorsystem

Datorsystem
Laboration 3: Operativsystem
Senast uppdaterad: 5 mars 2012
Version 1.3
Student:
L¨arare:
Underskrift:
Underskrift:
Datum:
Datorsystem
Laboration 3
1
Inneh˚
all
1 Inledning
2
1.1
Introduktion
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
1.2
Labbens syfte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
1.3
Labbens uppl¨
agg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
1.4
Hemlaboration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
1.5
Litteratur till laborationen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
1.6
Att genomf¨
ora labben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
2 F¨
orberedelseuppgifter
3
2.1
Multiprogramming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
2.2
Minne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
2.2.1
4
Vid redovisningen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 Labbuppgifter
3.1
3.2
3.3
5
Processorn och processer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5
3.1.1
Om v¨
ardet “CPU time (%)” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5
3.1.2
Processor-intensiva processer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6
3.1.3
Blanda in en I/O-intensiv process
. . . . . . . . . . . . . . . . . . . . . . . . . . .
7
3.1.4
I/O-intensiva processer
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7
3.1.5
Blanda in en CPU-intensiv process . . . . . . . . . . . . . . . . . . . . . . . . . . .
8
3.1.6
Vid redovisningen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8
Context Switch och Time-Slice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9
3.2.1
9
Vid redovisningen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Minne och Swap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.3.1
Om slidern clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.3.2
Virtuellt minne och Page tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.3.3
Page tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.3.4
Paging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.3.5
Thrashing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.3.6
Vid redovisningen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4 Redovisning
14
Datorsystem
1
Laboration 3
2
Inledning
1.1
Introduktion
I denna labb kommer vi unders¨
oka hur operativsystemet sk¨oter den grundl¨aggande uppgiften att k¨
ora
flera processer samtidigt och dela upp datorns prim¨arminne mellan dem.
F¨
or att g¨
ora detta kommer vi anv¨
anda ett grafiskt program som l˚
ater oss simulera en processor med
prim¨
arminne och ett operativsystem som k¨or flera processer samtidigt.
1.2
Labbens syfte
1. Du skall f˚
a en st¨
orre f¨
orst˚
aelse av vad som h¨ander n¨ar operativsystemet k¨or flera processer samtidigt.
2. Du skall f¨
orst˚
a hur processernas anv¨andning av I/O (Input/Output) p˚
averkar anv¨andingen av
processorn.
3. Du skall kunna dra slutsatser om hur context switching p˚
averkar prestandan.
4. Du skall f¨
orst˚
a hur operativsystemet hanterar virtuellt minne med page tables och paging.
5. Du skall f˚
a en st¨
orre insikt i hur ett operativsystem kan k¨ora program som anv¨ander mer minne
an det finns prim¨
arminne i datorn.
¨
1.3
Labbens uppl¨
agg
Labben ¨
ar uppdelad i tre delar; Processer (3.1), Context Switching (3.2) samt Minne och Swap (3.3).
F¨
or varje del kommer ni utf¨
ora ett antal simuleringar och f¨ors¨oka svara p˚
a fr˚
agor och dra slutsatser om
vad det ¨
ar som h¨
ander.
1.4
Hemlaboration
Laborationen ¨
ar en hemlaboration. Det inneb¨ar att ni utf¨or den p˚
a f¨orhand, antingen p˚
a er egen dator
eller i n˚
agon av universitetets datasalar, f¨or att senare redovisa resultatet f¨or en handledare.
N¨
ar ni kommer till redovisningen m˚
aste ni kunna svara p˚
a alla fr˚
agor; b˚
ade f¨orberedelseuppgifter och
de fr˚
agor som st¨
alls i de olika momenten av hemlaborationen. Observera att ni f¨orv¨antas ta med era
l¨
osningar p˚
a papper. Datorer kommer inte vara till˚
atna p˚
a redovisningen.
Under sektionen Redovisning (se sektion 4) finns en sammanfattning av de fr˚
agor ni skall svara p˚
a innan
redovisningen.
Observera: Det absolut viktigaste med labben ¨ar de slutsatser ni drar av att svara p˚
a fr˚
agorna, att
enbart g¨
ora de praktiska momenten ¨
ar inte tillr¨ackligt.
Laborationen kan g¨
oras tv˚
a och tv˚
a men redovisas individuellt. Tid f¨or redovisning bokas i Daisy.
1.5
Litteratur till laborationen
• Kapitel 8.1-8.3 (s 278-306) i kursboken
• Om multitasking: pre-emption - http://en.wikipedia.org/wiki/Preemption_(computing)
• Guide till SOsim - http://people.dsv.su.se/~ahn/da-VT12/guide_till_sosim.pdf
Datorsystem
1.6
Laboration 3
3
Att genomf¨
ora labben
Om du vill g¨
ora labben p˚
a din egen dator m˚
aste du installera programmet SOsim. Programmet finns
tyv¨
arr enbar till Microsoft Windows, om du har en annan plattform rekommenderar vi att du g¨or labben
i en datorsal.
1. Ladda hem programmet fr˚
an http://www.training.com.br/sosim/sosim_v11_en.zip
2. Skapa en katalog n˚
agonstans p˚
a din dator (ex. ”C:\Program\sosim”)
3. Packa upp zip-filen ( sosim v11 en.zip ) till din nya katalog
4. Du kan starta programmet genom att k¨ora filen sosim.exe
5. Om programmet ¨
ar helt p˚
a portugisiska beh¨over du se till att samtliga filer fr˚
an zip-filen finns i
den mapp du lagt sosim.exe
Om du ist¨
allet g¨
or laborationen i en av datorsalarna kan du hitta SOsim p˚
a C:\sosim\sosim.exe. Det
finns ingen genv¨
ag till programmet i startmenyn, man f˚
ar sj¨alv ¨oppna mappen och starta programmet.
2
Fo
¨rberedelseuppgifter
2.1
Multiprogramming
a) Vad ¨
ar den grundl¨
aggande id´en med multiprogramming/multistasking?
Svar:
b) Vad ¨
ar en process i ett operativsystem?
Svar:
c) Vad inneb¨
ar time-sharing n¨
ar vi pratar om multitasking?
Svar:
d) Vad menar man med pre-emptive multitasking?
Svar:
e) Vad inneb¨
ar begreppet context switch?
Svar:
f) Vad ¨
ar en time slice?
Svar:
Datorsystem
2.2
Laboration 3
Minne
a) Vad ¨
ar skillnaden mellan en fysisk och en logisk adress?
Svar:
b) Vad ¨
ar en page i minnes-sammanhang?
Svar:
c) Vad ¨
ar en frame i minnes-sammanhang?
Svar:
d) Vad anv¨
ands en page table till?
Svar:
e) Vad inneb¨
ar demand paging?
Svar:
f) Vad ¨
ar ett page fault?
Svar:
g) Vad a
ands den till?
¨r en page file och vad anv¨
Svar:
h) Vad menar man med trashing n¨
ar man pratar om paging?
Svar:
2.2.1
Vid redovisningen
Visa era svar p˚
a f¨
orberedelseuppgifterna f¨
or handledaren
4
Datorsystem
Laboration 3
5
Figur 1: SOsim under k¨orning
3
Labbuppgifter
I labben kommer vi anv¨
anda ett program som heter SOsim1 , se figur 1. SOsim simulerar hur ett operativsystem hanterar processer och virtuellt minne och programmet har ett enkelt grafiskt gr¨anssnitt
uppdelat i flera f¨
onster. Det arbetar i huvudsak med processer som en anv¨andare kan starta och l˚
ata
k¨
ora i ett simulerat operativsystem med en simulerad processor.
Viktigt: kom ih˚
ag att starta om SOsim i de steg d¨
ar ni uppmanas till det. Programmet ¨
ar
tyv¨
arr buggigt och kan inte starta mer ¨
an 20 processer under en k¨orning.
Ett felmeddelande ni kan f˚
a¨
ar en dialogruta som s¨ager List index out of bounds, men det p˚
averkar inte
sj¨
alva programk¨
orningen.
Ni kommer i instruktionerna till de olika experimenten f˚
a uppmaningen att upprepa simuleringarna. Anledningen ¨
ar att programmet ¨
ar buggigt och genom att upprepa experimenten
f¨
ors¨
akrar ni er om att programmet g¨
or vad som f¨
orv¨
antas.
3.1
Processorn och processer
I den f¨
orsta delen tittar vi p˚
a hur olika sorters processer p˚
averkar hur mycket processorn anv¨ands (nyttjandegraden). Vi tittar p˚
a extremfall av processer; ett fall d¨ar vi har en m¨angd processor-intensiva
processer och ett annat d¨
ar vi har en majoritet I/O-intensiva.
3.1.1
Om v¨
ardet “CPU time (%)”
Under labben kommer ni att observera f¨
or¨
andringar i v¨ardet “CPU time (%)” i SOsims statistik-f¨onster.
Det ger ett m˚
att p˚
a hur mycket simulatorns processorn anv¨ants under k¨orningen.
1 http://www.training.com.br/sosim/indexen.htm
Datorsystem
Laboration 3
6
V¨
ardet ¨
ar ett r¨
orligt medelv¨
arde, det ber¨
aknas allts˚
a som ett genomsnitt av processoranv¨andningen under
hela simulateringen. Det ¨
ar d¨
arf¨
or inte det exakta v¨ardet som ¨ar intressant n¨ar ni g¨or testerna, utan ˚
at
vilket h˚
all det r¨
or sig.
Om v¨
ardet ¨
ar ¨
okande inneb¨
ar det att vi anv¨ander processorn mer ¨an det v¨arde som f¨or tillf¨allet visas
(det kan vara s˚
a att vi faktiskt anv¨
ander processorn n¨astan 100% , ¨aven om “CPU time (%)” f¨or tillf¨allet
bara visar 20%).
Om v¨
ardet minskar inneb¨
ar det att vi anv¨ander processorn mindre ¨an det v¨arde som f¨or tillf¨allet visas.
Desto snabbare v¨
ardet f¨
or¨
andras, desto l¨
angre ¨ar det genomsnitt som visas f¨or tillf¨allet fr˚
an den faktiska
processoranv¨
andningen. Om v¨
ardet f¨
or¨
andras v¨aldigt l˚
angsamt inneb¨ar det att vi ¨ar n¨ara det faktiska
v¨
ardet.
Om man pausar simuleringen med Stop-knappen i SOSim Console, stoppas tyv¨arr inte insamlingen av
statistik. Statistics-f¨
onstret kommer forts¨atta uppdatera v¨ardena trots att simuleringen inte k¨or, och
d¨
arf¨
or kommer “CPU time (%)” felaktigt b¨orja sjunka.
3.1.2
Processor-intensiva processer
1) Starta SOsim. P˚
a skolans datorer hittar ni det i C:\Sosim\sosim.exe
¨
2) Oppna
f¨
onstret Statistics i SOsim Console.
¨
3) G˚
a in i Options i f¨
onstret Memory Manager. Andra
Min. free page list size till 40. Viktigt: s¨
att
Fetch page policy till Pre-Paging manuellt, ¨
aven om den redan ¨
ar det. SOsim har en
bugg om man inte uttryckligen s¨
atter v¨ardet efter att ¨andrat Min. free page list size.
4) S¨
att kontrollerna i Processor Manager -f¨onstret till f¨oljande v¨arden:
• IO Wait Time: minimum (l¨
angst till v¨anster)
• Time-slice: h¨
alften (i mitten)
• Clock : maximum (l¨
angst till h¨
oger)
5) Starta 10 processer med profilen CPU.
6) L˚
at simulatorn k¨
ora i minst en minut och observera vilket tillst˚
and processerna befinner sig i, samt
hur“CPU time (%)” f¨
or¨
andras.
7) L˚
at simulatorn forts¨
atta k¨
ora till n¨
asta experiment (3.1.3).
Fr˚
agor att svara p˚
a:
1) Vilket tillst˚
and befinner sig processerna i f¨or det mesta? Vad inneb¨ar det?
Svar:
2) Minskar eller ¨
okar “CPU time (%)” i Statistics-f¨
onstret? Ungef¨ar hur h¨ogt ¨ar det efter en minut?
Svar:
3) Vad inneb¨
ar v¨
ardet p˚
a “CPU time (%)”, nyttjar vi processorn v¨al?
Svar:
Datorsystem
3.1.3
Laboration 3
7
Blanda in en I/O-intensiv process
1) L¨
agg till en ny process, men med profilen IO 1.
2) L˚
at simulatorn k¨
ora minst 1 minuter med den nya processen. Se till att den hinner hamna i
Waiting-l¨
aget n˚
agra g˚
anger. Observera hur “CPU time (%)” f¨or¨andras.
3) Upprepa hela experimentet (fr˚
an 3.1.2) minst tv˚
a g˚
anger f¨or att kontrollera att SOSim ger liknande
resultat.
Fr˚
agor att svara p˚
a:
1) Ser ni n˚
agon skillnad i hur “CPU time (%)” f¨or¨andras av att vi lade till en process som anv¨ander
mycket IO?
Svar:
2) Vad drar ni f¨
or slutsats av det?
Svar:
3.1.4
I/O-intensiva processer
1) starta om SOsim. En bugg g¨
or att man inte kan starta mer ¨an 20 processer under en k¨orning.
¨
2) Oppna
f¨
onstret Statistics i SOsim Console.
¨
3) G˚
a in i Options i f¨
onstret Memory Manager. Andra
Min. free page list size till 40. Viktigt: s¨
att
Fetch page policy till Pre-Paging manuellt, ¨
aven om den redan ¨
ar det. SOsim har en
bugg om man inte uttryckligen s¨
atter v¨ardet efter att ¨andrat Min. free page list size.
4) S¨
att kontrollerna i Processor Manager -f¨onstret till f¨oljande v¨arden:
• IO Wait Time: minimum (l¨
angst till v¨anster)
• Time-slice: h¨
alften (i mitten)
• Clock : maximum (l¨
angst till h¨
oger)
5) Starta nu 10 processer med profilen IO 1.
6) K¨
or simulatorn i ungef¨
ar en minut och observera vilket tillst˚
and processerna befinner sig i (i Processor Manager ). Notera ocks˚
a hur v¨ardet p˚
a “CPU time (%)” f¨or¨andras.
7) L˚
at simulatorn forts¨
atta k¨
ora till n¨
asta experiment (3.1.5).
Fr˚
agor att svara p˚
a:
1) Vilket tillst˚
and befinner sig processerna i f¨or det mesta? Vad betyder det?
Svar:
Datorsystem
Laboration 3
8
¨
2) Okar
eller minskar “CPU time (%)” i Statistics-f¨
onstret? Ungef¨ar hur h¨ogt ¨ar det efter en minut?
Svar:
3) Vad inneb¨
ar v¨
ardet, nyttjar vi processorn bra?
Svar:
4) Om ni j¨
amf¨
or med n¨
ar vi hade 10 processorintensiva processer (uppgift 3.1.2), vad kan ni dra f¨
or
slutsats av skillnaderna mellan v¨
ardena p˚
a “CPU time (%)”?
Svar:
3.1.5
Blanda in en CPU-intensiv process
1) L¨
agg till ytterligare en process, men med profilen CPU.
2) L˚
at simulatorn k¨
ora minst 1 minut samtidigt som ni observerar vad som h¨ander med “CPU time
(%)”.
3) Upprepa hela experimentet (fr˚
an 3.1.4) minst tv˚
a g˚
anger f¨or att kontrollera att SOSim ger liknande
resultat.
Fr˚
agor att svara p˚
a:
1) Hur f¨
or¨
andras “CPU time (%)”?
Svar:
2) Varf¨
or blir det s˚
a? Vad ¨
ar skillnaden fr˚
an uppgift 3.1.3?
Svar:
3.1.6
Vid redovisningen
Visa era svar p˚
a fr˚
agorna och f¨
orklara de olika v¨
arden ni sett p˚
a “CPU time (%)” n¨
ar vi
hade en majoritet CPU-intensiva j¨
amf¨
ort med en majoritet IO-intensiva processer.
F¨
orklara vad som h¨
ande n¨
ar vi lade till en process med annan profil.
Datorsystem
3.2
Laboration 3
9
Context Switch och Time-Slice
Vi skall nu titta p˚
a hur anv¨
andandet av processorn (“CPU time (%)”) och antalet processer som k¨
ors
per sekund (“Throughput (Proc/s)”) p˚
averkas av hur l¨ange vi l˚
ater varje process k¨ora.
1) starta om SOsim.
¨
2) Oppna
f¨
onstret Statistics i SOsim Console.
¨
3) G˚
a in i Options i f¨
onstret Memory Manager. Andra
Min. free page list size till 40. Viktigt: s¨att
Fetch page policy till Pre-Paging manuellt, ¨aven om den redan ¨ar det. SOsim har en bugg om man
inte uttryckligen s¨
atter v¨
ardet efter att ¨andrat Min. free page list size.
4) S¨
att kontrollerna i Processor Manager -f¨onstret till f¨oljande v¨arden:
• IO Wait Time: minimum (l¨
angst till v¨anster)
• Time-slice: minimum (l¨
angst till v¨anster)
• Clock : maximum (l¨
angst till h¨
oger)
5) Starta 10 processer med profilen CPU.
6) L˚
at simulatorn k¨
ora en minut och observera v¨ardet av “CPU time (%)” och “Throughput (Proc/s)”i
Statistics-f¨
onstret.
¨ Time-slice i Processor Manager -f¨onstret till max (l¨angst till h¨oger).
7) Oka
8) Observera vad som nu h¨
ander med “CPU time (%)” och “Throughput (Proc/s)”.
9) Prova s¨
atta Time-slice till olika v¨
arden och observera hur fort “CPU time (%)” f¨or¨andras och ˚
at
vilket h˚
all det r¨
or sig.
10) Upprepa experimentet minst tv˚
a g˚
anger f¨or att kontrollera att SOSim ger liknande resultat.
Fr˚
agor att svara p˚
a:
1) Hur f¨
or¨
andras v¨
ardena “CPU time (%)” och “Throughput (Proc/s)”n¨ar vi a¨ndrar v¨ardet p˚
a timeslice?
Svar:
2) Varf¨
or blir det s˚
a?
Svar:
3.2.1
Vid redovisningen
F¨
orklara f¨
or handledaren varf¨
or ni f˚
ar de olika v¨
ardena p˚
a “CPU time (%)”. Ledning: Vad
m˚
aste operativsystemet g¨
ora vid en context switch?.
Datorsystem
3.3
Laboration 3
10
Minne och Swap
Vi skall nu titta n¨
armare p˚
a hur operativsystemet anv¨ander virtuellt minne. SOsim utg˚
ar fr˚
an en sidindelad minnesmodell med 100 ramar i prim¨arminnet. Varje process kan som mest ha 5 sidor virtuellt
minne tilldelat till sig.
Genom att s¨
atta Min. free page list size i inst¨allnigarna f¨or Memory Manager kan vi simulera olika
m¨
angd tillg¨
angligt prim¨
arminne. Vi skall titta n¨armare p˚
a vad som h¨ander om m¨angden prim¨arminne ¨
ar
mindre ¨
an det minne v˚
ara k¨
orande processer kr¨aver. Vi tittar ocks˚
a p˚
a skillnaden mellan virtuellt minne
och fysiskt minne.
3.3.1
Om slidern clock
Clock styr hur fort den simulerade processorn arbetar, och kan anv¨andas f¨or att styra hur snabbt SOsim
k¨
or processer. ni kan ¨
oka eller minska v¨
ardet som ni vill, det p˚
averkar inte de v¨arden vi ¨ar intresserade
av i simuleringen.
I de fall ni tycker saker g˚
ar f¨
or fort (text i Loggen, f¨or¨andringar i PCB, etc.) kan ni st¨alla ned clock.
Om ni ist¨
allet vill se hur v¨
arden i statistics-f¨onstret ¨andras under tid kan det vara bra att dra upp clock
till max s˚
a att ni inte beh¨
over v¨
anta lika l¨ange.
3.3.2
Virtuellt minne och Page tables
1) Starta om SOsim.
¨
2) Andra
i Memory Manager Options s˚
a att Fetch page policy ¨ar Demand Paging och Min. free page
list size a
a att ha plats f¨or 10 sidor i prim¨arminnet.
¨r 90. Vi kommer d˚
¨
3) Oppna
f¨
onstret Log och Statistics i SOsim Console.
¨
4) Oppna
f¨
onstret Pagefile fr˚
an Memory Manager.
5) S¨
att kontrollerna i Processor Manager -f¨onstret till f¨oljande v¨arden:
• IO Wait Time: minimum (l¨
angst till v¨anster)
• Time-slice: maximum (l¨
angst till h¨oger)
• Clock : maximum (l¨
angst till h¨
oger), s˚
a att simuleringen k¨or s˚
a fort som m¨ojligt
6) Starta tv˚
a processer samtidigt med profilen CPU.
7) L˚
at simulatorn k¨
ora i en minut och observera vad som h¨ander i Processor Manager - och Memory
Manager -f¨
onstren medan processerna k¨or.
8) Titta ocks˚
a p˚
a hur “CPU time (%)” f¨or¨andras.
9) Upprepa experimentet minst tv˚
a g˚
anger f¨or att kontrollera att SOSim ger liknande resultat.
10) L˚
at experimentet forts¨
atta k¨
ora, i n¨asta uppgift (3.3.3) anv¨ander vi samma simulering.
Fr˚
agor att svara p˚
a:
1) Vad h¨
ander i Memory Manager -f¨
onstret under k¨orningen?
Svar:
Datorsystem
Laboration 3
11
2) I loggen f˚
ar vi meddelanden om Page Fault, varf¨or?
Svar:
3) Processerna b¨
orjar med att g¨
ora IO-operationer, trots att de startade med profilen CPU, vad beror
det p˚
a? Ledning: vad betyder demand paging som vi st¨allde in i Memory Manager ?
Svar:
4) Forts¨
atter processerna g¨
ora IO-operationer under simuleringen?
Svar:
¨
5) Okar
eller minskar “CPU time (%)”?
Svar:
3.3.3
Page tables
1) Titta nu p˚
a processernas PCB (process control block). Ni hittar det genom att b¨orja med att klicka
p˚
a Process->Select i SOsim Console.
¨
2) I den nya dialogen som o
a en process och sedan knappen PCB. Oppna
fliken
¨ppnas klickar ni p˚
PPT (Process Page Table). H¨
ar kan ni se en tabell med 5 rader. Med de r¨oda pilarna kan ni stega
mellan de tv˚
a processerna.
3) Titta p˚
a kolumnerna VPN (Virtual Page Number) och PFN (Physical Frame Number). J¨amf¨
or
v¨
ardena med vad ni ser i Memory Manager.
Fr˚
agor att svara p˚
a:
1) Vad anv¨
ander operativsystemet siffrorna i kulumnen VPN och PFN till?
Svar:
Datorsystem
3.3.4
Laboration 3
12
Paging
1) Starta om SOsim.
¨
2) Andra
i Memory Manager Options s˚
a att Fetch page policy ¨ar Demand Paging och Min. free page
list size a
a att ha plats f¨
or 10 sidor i prim¨
arminnet.
¨r 90. Vi kommer d˚
¨
3) Oppna
f¨
onstret Log och Statistics i SOsim Console.
¨
4) Oppna
f¨
onstret Pagefile fr˚
an Memory Manager.
5) S¨
att kontrollerna i Processor Manager -f¨onstret till f¨oljande v¨arden:
• IO Wait Time: minimum (l¨
angst till v¨anster)
• Time-slice: maximum (l¨
angst till h¨oger)
• Clock : maximum (l¨
angst till h¨
oger), s˚
a att simuleringen k¨or s˚
a fort som m¨ojligt
6) Starta tre processer samtidigt med profilen CPU.
7) L˚
at simulatorn k¨
ora i en minut och observera vad som h¨ander i Processor Manager - och Memory
Manager - f¨
onstren medan processerna k¨or. L¨agg a¨ven m¨arke till vad som h¨ander i Process Page
Table (PPT) f¨
or den f¨
orsta processen.
8) Notera ˚
at vilket h˚
all “CPU time (%)” r¨or sig under k¨orningen.
9) Upprepa experimentet minst tv˚
a g˚
anger f¨or att kontrollera att SOSim ger liknande resultat.
Fr˚
agor att svara p˚
a:
1) Vad ¨
ar det vi ser h¨
anda i Memory Manager och Pagefile?
Svar:
2) Hur a
¨ndras “CPU time (%)” under k¨orningen?
Svar:
3) Vi har plats f¨
or 10 sidor i prim¨
arminnet men k¨or 3 processer som alla anv¨ander 5 sidor var. Var
hamnar de som inte f˚
ar plats i arbetsminnet och n¨ar hamnar de d¨ar?
Svar:
Datorsystem
3.3.5
Laboration 3
13
Thrashing
1) Starta om SOsim.
¨
2) Andra
i Memory Manager Options s˚
a att Fetch page policy ¨ar Demand Paging och Min. free page
list size a
a att ha plats f¨or 5 sidor i prim¨arminnet.
¨r 95. Vi kommer d˚
¨
3) Oppna
f¨
onstret Log och Statistics i SOsim Console.
¨
4) Oppna
f¨
onstret Pagefile fr˚
an Memory Manager.
5) S¨
att kontrollerna i Processor Manager -f¨onstret till f¨oljande v¨arden:
• IO Wait Time: minimum (l¨
angst till v¨anster)
• Time-slice: maximum (l¨
angst till h¨oger)
• Clock : maximum (l¨
angst till h¨
oger)
6) Starta tre processer samtidigt med profilen CPU.
7) L˚
at simulatorn k¨
ora i tv˚
a minuter och observera vad som h¨ander med v¨ardet “CPU time (%)”.
Titta ocks˚
a p˚
a vad som h¨
ander i f¨onstret Processor Manager och i vilket tillst˚
and processerna
befinner sig.
8) Upprepa experimentet minst tv˚
a g˚
anger f¨or att kontrollera att ni f˚
ar liknande resultat.
Fr˚
agor att svara p˚
a:
1) Hur ser det ut nu? Vad ser vi h¨
anda i Processor Manager?
Svar:
2) Vad h¨
ander med v¨
ardet “CPU time (%)” i Statistics-f¨onstret?
Svar:
3) Vad ¨
ar det som p˚
ag˚
ar? Ledning: Vad inneb¨ar begreppet thrashing n¨ar det g¨alller paging?
Svar:
3.3.6
Vid redovisningen
Visa era svar f¨
or handledaren och f¨
orklara vad som skiljer de olika k¨
orningarna ˚
at. Vad ¨
ar
problemet i den sista k¨
orningen (uppgift 3.3.5) j¨
amf¨
ort med de andra?
Datorsystem
4
Laboration 3
14
Redovisning
Redovisningen bokas genom val av grupp i Daisy. Under redovisningen skall ni kunna svara p˚
a fr˚
agorna
f¨
or de olika momenten samt motivera de svar ni f˚
att.
De slutsatser ni dragit av att svara p˚
a de olika fr˚
agorna ¨ar det viktiga. P˚
a redovisningen kan handledaren
st¨
alla f¨
oljdfr˚
agor f¨
or att kontrollera att ni f¨orst˚
att vad fr˚
agorna egentligen handlar om.
Vid redovisningen skall ni visa svaren p˚
a fr˚
agorna f¨or:
• F¨
orberedelseuppgifter: 2
• Processorn och processorer: 3.1
• Context switching: 3.2
• Minne och Swap: 3.3