cpu scheduling

22
CPU scheduling Introduction to Operating Systems: Supplemental Module

Upload: skylar

Post on 07-Feb-2016

45 views

Category:

Documents


0 download

DESCRIPTION

CPU scheduling. Introduction to Operating Systems: Supplemental Module. The processes. Arrival time. CPU burst. 0 13 16 20. P1: 4 36 8 112 1. I/O burst. P2: 23 40 2. P3: 4 20 112 40 2 40 2 40 1. P4: 2 150 3 10 1. Gantt chart. 0. FCFS. 0 13 16 20. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: CPU scheduling

CPU scheduling

Introduction to Operating Systems: Supplemental Module

Page 2: CPU scheduling

The processes

P1: 4 36 8 112 1

P2: 23 40 2

P3: 4 20 112 40 2 40 2 40 1

P4: 2 150 3 10 1

0

0

13

16

20

Arrival time

CPU burst

I/O burst

Gantt chart

Page 3: CPU scheduling

FCFS

P1: 4 36 8 112 1

P2: 23 40 2

P3: 4 20 112 40 2 40 2 40 1

P4: 2 150 3 10 1

P1 idle P2 P3 P4

0 4 13 36 40 42

0

13

16

20

Gantt chart

Which process goes next?

Page 4: CPU scheduling

FCFS

P1: 4 36 8 112 1

P2: 23 40 2

P3: 4 20 112 40 2 40 2 40 1

P4: 2 150 3 10 1

P1 idle P2 P3 P4

0 4 13 36 40 42

0

13

16

20

Gantt chart

Which process goes next?

40

76

60

192

Time next ready

Page 5: CPU scheduling

FCFS

P1: 4 36 8 112 1

P2: 23 40 2

P3: 4 20 112 40 2 40 2 40 1

P4: 2 150 3 10 1

P1 idle P2 P3 P4 P1 idle P3

0 4 13 36 40 42 50 60 172

0

13

16

20

Gantt chart

40

76

60

192

Time next ready

Page 6: CPU scheduling

FCFS

P1: 4 36 8 112 1

P2: 23 40 2

P3: 4 20 112 40 2 40 2 40 1

P4: 2 150 3 10 1

P1 idle P2 P3 P4 P1 idle P3 P2 P1 idle P4 0 4 13 36 40 42 50 60 172 174 175 192

0

13

16

20

Gantt chart

162

76

212

192

Page 7: CPU scheduling

SRTF

P1: 4 36 8 112 1

P2: 23 40 2

P3: 4 20 112 40 2 40 2 40 1

P4: 2 150 3 10 1

P1 idle P2 P3 P4 P2

0 4 13 16 20 22

0

13

16

20

Gantt chart

Which process goes next, and when?

Page 8: CPU scheduling

SRTF

P1: 4 36 8 112 1

P2: 23 40 2

P3: 4 20 112 40 2 40 2 40 1

P4: 2 150 3 10 1

0

13

16

20

40

Run

40

172

Time next ready

P1 idle P2 P3 P4 P2

0 4 13 16 20 22

Gantt chart

Page 9: CPU scheduling

SRTF

P1: 4 36 8 112 1

P2: 23 40 2

P3: 4 20 112 40 2 40 2 40 1

P4: 2 150 3 10 1

0

13

16

20

162

End

Run

172

P1 idle P2 P3 P4 P2 P1 P3 P2 P3

0 4 13 16 20 22 42 50 82 84

Gantt chart

Which process goes next, and when?

Page 10: CPU scheduling

SRTF

P1: 4 36 8 112 1

P2: 23 40 2

P3: 4 20 112 40 2 40 2 40 1

P4: 2 150 3 10 1

0

13

16

20

End

End

205

185

P1 idle P2 P3 P4 P2 P1 P3 P2 P3 P1 P3 idle P4 0 4 13 16 20 22 42 50 82 84 162 163 165 172 175

Gantt chart

Page 11: CPU scheduling

RR, Q = 10

P1: 4 36 8 112 1

P2: 23 40 2

P3: 4 20 112 40 2 40 2 40 1

P4: 2 150 3 10 1

P1 idle P2 P3 P4

0 4 13 23 27 29

0

13

16

20

Gantt chart

Which process goes next, and when?

Page 12: CPU scheduling

RR, Q = 10

P1: 4 36 8 112 1

P2: 23 40 2

P3: 4 20 112 40 2 40 2 40 1

P4: 2 150 3 10 1

P1 idle P2 P3 P4 P2

0 4 13 23 27 29 42

0

13

16

20

Gantt chart

40

82

47

179

Page 13: CPU scheduling

RR, Q = 10

P1: 4 36 8 112 1

P2: 23 40 2

P3: 4 20 112 40 2 40 2 40 1

P4: 2 150 3 10 1

P1 idle P2 P3 P4 P2 P1 P3 P2 P3

0 4 13 23 27 29 42 50 90 92

0

13

16

20

Gantt chart

162

End

Run

179

Page 14: CPU scheduling

RR, Q = 10

P1: 4 36 8 112 1

P2: 23 40 2

P3: 4 20 112 40 2 40 2 40 1

P4: 2 150 3 10 1

P1 idle P2 P3 P4 P2 P1 P3 P2 P3 P1 P3 idle

0 4 13 23 27 29 42 50 90 92 162 163 165

0

13

16

20

Gantt chart

End

End

205

179

Page 15: CPU scheduling

HRRN

P1: 4 36 8 112 1

P2: 23 40 2

P3: 4 20 112 40 2 40 2 40 1

P4: 2 150 3 10 1

1 idle 2

0 4 13 36

0

13

16

20

Gantt chart

40

76RR4 = 1+ (36-20)/2 = 9

RR3 = 1+ (36-16)/4 = 6

Page 16: CPU scheduling

HRRN

P1: 4 36 8 112 1

P2: 23 40 2

P3: 4 20 112 40 2 40 2 40 1

P4: 2 150 3 10 1

1 idle 2 4 3

0 4 13 36 38 42

0

13

16

20

Gantt chart

40

76

62

188

Page 17: CPU scheduling

HRRN

P1: 4 36 8 112 1

P2: 23 40 2

P3: 4 20 112 40 2 40 2 40 1

P4: 2 150 3 10 1

1 idle 2 4 3 1 idle 3

0 4 13 36 38 42 50 62 174

0

13

16

20

Gantt chart

162

76

214

188

RR2 = 1+ (174-76)/2 = 50

RR1 = 1+ (174-162)/1 = 13

Page 18: CPU scheduling

HRRN

P1: 4 36 8 112 1

P2: 23 40 2

P3: 4 20 112 40 2 40 2 40 1

P4: 2 150 3 10 1

1 idle 2 4 3 1 idle 3 2 1 idle 4 idle 4

0 4 13 36 38 42 50 62 174 176 177 188 191 201

0

13

16

20

Gantt chart

end

end

214

end

Page 19: CPU scheduling

MLFQ: Q0 = 8, Q1 = 16, Q2 =

P1: 4 36 8 112 1

P2: 23 40 2

P3: 4 20 112 40 2 40 2 40 1

P4: 2 150 3 10 1

0 4 13 21 25 27

0

13

16

20

Gantt chart

40

q1

45

177

1 idle 2 3 4 2

15

Page 20: CPU scheduling

MLFQ: Q0 = 8, Q1 = 16, Q2 =

P1: 4 36 8 112 1

P2: 23 40 2

P3: 4 20 112 40 2 40 2 40 1

P4: 2 150 3 10 1

0 4 13 21 25 27 40 48 56

0

13

16

20

Gantt chart

160

q1

q1

177

1 idle 2 3 4 2 1 3

2

104

Page 21: CPU scheduling

MLFQ: Q0 = 8, Q1 = 16, Q2 =

P1: 4 36 8 112 1

P2: 23 40 2

P3: 4 20 112 40 2 40 2 40 1

P4: 2 150 3 10 1

0 4 13 21 25 27 40 48 56 58 98

0

13

16

20

Gantt chart

160

98

q2

177

1 idle 2 3 4 2 1 3 2 3

64

Page 22: CPU scheduling

MLFQ: Q0 = 8, Q1 = 16, Q2 =

P1: 4 36 8 112 1

P2: 23 40 2

P3: 4 20 112 40 2 40 2 40 1

P4: 2 150 3 10 1

0 4 13 21 25 27 40 48 56 58 98 100 160 161 165

0

13

16

20

Gantt chart

end

end

q2

190

1 idle 2 3 4 2 1 3 2 3 2 3 1 3 idle

4