Homework 2
Sarah Diesburg
Operating Systems
COP 4610
Why does OS loader set kernel mode? OS needs to run with full privileges
Sets more restrictive user mode bit for user programs
Protects OS from errant user programs
Three Processes
Process A
Process B
Process C
Time
0 100 200 300 400 500 600 700 800
First In, First Out
Process A
Process B
Process C
FIFOTime
0 100 200 300 400 500 600 700 800
BC A
First In, First Out
Process A
Process B
Process C
FIFO
Average response time
= [(300-50) + (500-150) + 0]/3 = 200
Time
0 100 200 300 400 500 600 700 800
BC A
First In, First Out
Process A
Process B
Process C
FIFO
Average wait time
= [(300-50) + (500-150) + 0]/3 = 200
Time
0 100 200 300 400 500 600 700 800
BC A
First In, First Out
Process A
Process B
Process C
FIFO
Average turnaround time
= [(500-50) + (900-150) + (300-0)]/3 = 500
Time
0 100 200 300 400 500 600 700 800
BA BC A
Round Robin (Time slice = 100)
Process A
Process B
Process C
RRTime
0 100 200 300 400 500 600 700 800
C
Process A
Process B
Process C
RR
Round Robin (Time slice = 100)
Time
0 100 200 300 400 500 600 700 800
C
Process A
Process B
Process C
RR
Round Robin (Time slice = 100)
Time
0 100 200 300 400 500 600 700 800
C A
Process A
Process B
Process C
RR
Round Robin (Time slice = 100)
Time
0 100 200 300 400 500 600 700 800
C A
Process A
Process B
Process C
RR
Round Robin (Time slice = 100)
Time
0 100 200 300 400 500 600 700 800
C A C
Process A
Process B
Process C
RR
Round Robin (Time slice = 100)
Time
0 100 200 300 400 500 600 700 800
C A C
Process A
Process B
Process C
RR
Round Robin (Time slice = 100)
Time
0 100 200 300 400 500 600 700 800
C A C B
Process A
Process B
Process C
RR
Round Robin (Time slice = 100)
Time
0 100 200 300 400 500 600 700 800
C A C B
Process A
Process B
Process C
RR
Round Robin (Time slice = 100)
Time
0 100 200 300 400 500 600 700 800
C A C B A
Process A
Process B
Process C
RR
Round Robin (Time slice = 100)
Time
0 100 200 300 400 500 600 700 800
C A C B A
Process A
Process B
Process C
RR
Round Robin (Time slice = 100)
Time
0 100 200 300 400 500 600 700 800
C A C B A C
Process A
Process B
Process C
RR
Round Robin (Time slice = 100)
Time
0 100 200 300 400 500 600 700 800
C A C B A C
Process A
Process B
Process C
RR
Round Robin (Time slice = 100)
Time
0 100 200 300 400 500 600 700 800
C A C B A C B
Process A
Process B
Process C
RR
Round Robin (Time slice = 100)
Time
0 100 200 300 400 500 600 700 800
C A C B A C B
Process A
Process B
Process C
RR
Average response time
= [(100-50) + (300 – 150) + 0]/3 = 66.7
Round Robin (Time slice = 100)
Time
0 100 200 300 400 500 600 700 800
C A C B A C B
Process A
Process B
Process C
RR
Average wait time
= {[(100–50) + (400–200)] + [(300–150) + (600–400)]
+ [0 + (200–100) + (500–300)]}/3 = [250 + 350 + 300]/3 = 300
Round Robin (Time slice = 100)
Time
0 100 200 300 400 500 600 700 800
C A C B A C B
Process A
Process B
Process CRR
Average turnaround time= [(500 – 50) + (900 – 150) + (600 – 0)]/3 = 600
Round Robin (Time slice = 100)
Time
0 100 200 300 400 500 600 700 800
C A C B A C B
Shortest Job Next
Process A
Process B
Process C
SJNTime
0 100 200 300 400 500 600 700 800
C
Shortest Job Next
Process A
Process B
Process C
SJNTime
0 100 200 300 400 500 600 700 800
C
Shortest Job Next
Process A
Process B
Process C
SJNTime
0 100 200 300 400 500 600 700 800
C A
Shortest Job Next
Process A
Process B
Process C
SJNTime
0 100 200 300 400 500 600 700 800
C A
Shortest Job Next
Process A
Process B
Process C
SJNTime
0 100 200 300 400 500 600 700 800
C A
Shortest Job Next
Process A
Process B
Process C
SJNTime
0 100 200 300 400 500 600 700 800
C A B
Shortest Job Next
Process A
Process B
Process C
SJNTime
0 100 200 300 400 500 600 700 800
C A B
Shortest Job Next
Process A
Process B
Process C
SJN
Average response time
= [(300-50) + (500-150) + 0]/3 = 200
Time
0 100 200 300 400 500 600 700 800
C A B
Shortest Job Next
Process A
Process B
Process C
SJN
Average wait time
= [(300-50) + (500-150) + 0]/3 = 200
Time
0 100 200 300 400 500 600 700 800
C A B
Shortest Job Next
Process A
Process B
Process C
SJN
Average turnaround time
= [(500-50) + (900-150) + (300-0)]/3 = 500
Time
0 100 200 300 400 500 600 700 800
C A B
Shortest Remaining Time First
Process A
Process B
Process C
SRTFTime
0 100 200 300 400 500 600 700 800
C
Shortest Remaining Time First
Process A
Process B
Process C
SRTFTime
0 100 200 300 400 500 600 700 800
C
Shortest Remaining Time First
Process A
Process B
Process C
SRTFTime
0 100 200 300 400 500 600 700 800
C A
Shortest Remaining Time First
Process A
Process B
Process C
SRTFTime
0 100 200 300 400 500 600 700 800
C A
Shortest Remaining Time First
Process A
Process B
Process C
SRTFTime
0 100 200 300 400 500 600 700 800
C A C
Shortest Remaining Time First
Process A
Process B
Process C
SRTFTime
0 100 200 300 400 500 600 700 800
C A C
Shortest Remaining Time First
Process A
Process B
Process C
SRTFTime
0 100 200 300 400 500 600 700 800
C A C B
Shortest Remaining Time First
Process A
Process B
Process C
SRTFTime
0 100 200 300 400 500 600 700 800
C A C B
Shortest Remaining Time First
Process A
Process B
Process C
SRTF
Average response time
= [0 + (500-150) + 0]/3 = 117
Time
0 100 200 300 400 500 600 700 800
C A C B
Shortest Remaining Time First
Process A
Process B
Process C
SRTF
Average wait time
= [0 + (500 – 150) + (250 – 50)]/3 = 183
Time
0 100 200 300 400 500 600 700 800
C A C B
Shortest Remaining Time First
Process A
Process B
Process CSRTF
Average turnaround time= [(250 – 50) + (900 – 150) + (500 – 0)]/3 = 483
Time
0 100 200 300 400 500 600 700 800
C A C B
Top Related