15
.สุขสันต บัวฉิม โปรแกรมวิชาคอมพิวเตอร คณะวิทยาศาสตร มหาวิทยาลัยราชภัฏลําปาง Operating System 1 .สุขสันต บัวฉิม หนา 2 Operating System 1 .สุขสันต บัวฉิม หนา 3 เมื่อโปรแกรมหนึ่งตองรอ ระบบปฏิบัติการจะเอาหนวยประมวลผล กลางออกมาจากโปรแกรมนั้น และใหหนวยประมวลผลกลางแก โปรแกรม อีกโปรแกรมหนึ่งแทน Operating System 1 .สุขสันต บัวฉิม หนา 4 ชวงที่โปรเซสทํางานอยูในซีพียู ชวงที่โปรเซสหยุดเพื่อรับขอมูลจาก Input Device หรือสงขอมูลออกไปใหกับ Output Device

Chapter 04 CPU Scheduling

Embed Size (px)

Citation preview

Page 1: Chapter 04 CPU Scheduling

อ.สุขสันต บัวฉิม

โปรแกรมวิชาคอมพิวเตอร คณะวิทยาศาสตร

มหาวิทยาลัยราชภัฏลําปาง

Operating System 1 อ.สุขสันต บัวฉิมหนา 2

Operating System 1 อ.สุขสันต บัวฉิมหนา 3

เมือ่โปรแกรมหนึ่งตองรอ ระบบปฏิบตัิการจะเอาหนวยประมวลผล

กลางออกมาจากโปรแกรมนั้น และใหหนวยประมวลผลกลางแก

โปรแกรม อีกโปรแกรมหนึ่งแทน

Operating System 1 อ.สุขสันต บัวฉิมหนา 4

ชวงที่โปรเซสทํางานอยูในซีพียู

ชวงที่โปรเซสหยุดเพื่อรับขอมูลจาก Input Device

หรือสงขอมูลออกไปใหกับ Output Device

Page 2: Chapter 04 CPU Scheduling

Operating System 1 อ.สุขสันต บัวฉิมหนา 5 Operating System 1 อ.สุขสันต บัวฉิมหนา 6

Operating System 1 อ.สุขสันต บัวฉิมหนา 7 Operating System 1 อ.สุขสันต บัวฉิมหนา 8

เปนตัวที่ระบบใชในการเลือกกระบวนการจากแถวพรอม เพื่อให

ทํางานในหนวยประมวลผลกลาง

Page 3: Chapter 04 CPU Scheduling

Operating System 1 อ.สุขสันต บัวฉิมหนา 9

การใหสิทธิการจัดเวลาแบบแทรกกลางคัน (Preemptive Scheduling)

ระบบปฏิบัติการจะทําการตัดสินใจเลือกกระบวนการใดๆขึ้นอยูกับสถานะการณดังนี้

1. เมื่อมีการเปลี่ยนสถานะของโปรเซสจาก

สถานะทํางาน (Running) ไปเปนสถานะคอย (Wait)

2. เมื่อมีการเปลี่ยนสถานะของโปรเซสจาก

สถานะทํางาน (Running) ไปเปนสถานะพรอม (Ready)

3. เมื่อมีการเปลี่ยนสถานะของโปรเซสจาก

สถานะคอย (Wait) ไปเปนสถานะพรอม (Ready)

4. เมื่อโปรเซส เสร็จสิ้น

1, 4 = แทรกกลางคันได 2,3 =แทรกกลางคันไมได

Operating System 1 อ.สุขสันต บัวฉิมหนา 10

Operating System 1 อ.สุขสันต บัวฉิมหนา 11

กฏเกณฑหรือขอประเมินผลตางๆ ที่จะเปนตัวเปรียบเทยีบวาวิธีไหนดทีี่สุด

ประสิทธิผลการใชหนวยประมวลผลกลาง (CPU Utilization)

อัตราการใชงานของ CPU มีคาอยูระหวาง 0-100%

อัตราปริมาณงาน (Throughput)

จํานวนโปรเซสที่ทํางานเสร็จสมบูรณตอหนวยเวลา

วงรอบการทํางาน (Turnaround time)

เวลาทีโ่ปรเซสหนึ่งๆ ตองเสียไปในการทํางานทั้งหมด

เวลารอคอย (Waiting time)

ระยะเวลาที่แตละโปรเซสตองรอคอยอยูในแถวคอย

เวลาตอบสนอง (Respond time)

ระยะเวลาตั้งแตที่ผูใชงานสงงานใหระบบจนถงึเวลาที่ผลลัพธแรกปรากฏตอผูใช

Operating System 1 อ.สุขสันต บัวฉิมหนา 12

การจัดเวลาแบบมากอนไดกอน (FCFS : First-Come First-Served)

การจัดเวลาแบบสั้นทาํกอน (SJF : Short – Job – First Scheduling)

การจัดเวลาตามลําดับความสําคัญ (Priority Scheduling)

การจดัเวลาแบบวนรอบ (RR : Round – Robin Scheduling)

การจัดเวลาแบบคิวหลายระดับ (Multilevel Queue Scheduling)

Page 4: Chapter 04 CPU Scheduling

Operating System 1 อ.สุขสันต บัวฉิมหนา 13

ใชเวลาในการรอคอยโดยเฉลี่ยมาก

Convey effect = หลายๆโปรเซสตองเสียเวลารอใหโปรเซสใหญ

เพียงโปรเซสเดียวทํางานจนเสร็จ

Operating System 1 อ.สุขสันต บัวฉิมหนา 14

ถามีโปรเซสเขามาถึงคิวตามลําดับ P1, P2 และ P3

เวลาการคอยของ (Waiting time) P1 = 0, P2 = 24 และ P3 = 27

คาเฉลี่ยของการคอย (Average waiting time) (0+24+27)/3 = 17 วินาที

24

3

3

P1

P2

P3

ระยะเวลาที่ตองการซีพียู (Burst Time) (S)โปรเซส

P3P2P1

0 24 27 30

Operating System 1 อ.สุขสันต บัวฉิมหนา 15

จงหาเวลาการคอย (Waiting time) และ คาเฉลี่ยเวลาของการคอย

(Average waiting time)

3

3

24

P1

P2

P3

ระยะเวลาที่ตองการซีพียู (Burst Time) (S)โปรเซส

5

3

20

1

P1

P2

P3

P4

ระยะเวลาที่ตองการซีพียู (Burst Time) (S)โปรเซส

Operating System 1 อ.สุขสันต บัวฉิมหนา 16

เลือกโปรเซสที่ทํางานสั้นที่สุดกอน แตถามีหลายโปรเซสที่ใชเวลา

เทากันใหตัดสินโดย ใชวิธี FCFS กอน

ไมใหสิทธิแทรกกลางคัน

โปรเซสใหมตองรอจนโปรเซสเดิมเสร็จ

ใหสิทธิแทรกกลางคันได

โปรเซสใหมสามารถแทรกเขาไปทํางานแทนโปรเซสที่กําลังทํางาน

อยูได

ขอดี ใชเวลาในโดยเฉลีย่ของการรอคอยต่ํา

ขอเสยี ตองทราบเวลาการทํางานของแตละโปรเซส ที่แนนอน

Page 5: Chapter 04 CPU Scheduling

Operating System 1 อ.สุขสันต บัวฉิมหนา 17

ถามีโปรเซสเขามาถึงคิวตามลําดับ P1, P2 , P3 และ P4

เวลาการคอยของ (Waiting time) P4 = 0, P1 = 3 ,P3 = 9 และ P2=16

คาเฉลี่ยของการคอย (Average waiting time) (3+9+16)/4 = 7 วินาที

คาเฉลี่ยของการคอยแบบ FCFS เทากับ (6+14+21)/4 = 10.25 วินาที

6

8

7

3

P1

P2

P3

P4

ระยะเวลาที่ตองการซีพียู (Burst Time) (S)โปรเซส

P1 P2P3P4

0 9 16 243

Operating System 1 อ.สุขสันต บัวฉิมหนา 18

ถามีโปรเซสเขามาถึงคิวตามลําดับเวลาที่มาถึง P1, P2 , P3 และ P4

เวลาการคอยของ P1 = 10-1 , P2 = 1-1 ,P3 = 17-2 และ P4=5-3

คาเฉลี่ยของการคอย (9+0+15+2)/4 = 26/4 = 6.5 วินาที

8

4

9

5

เวลาที่ใช

0

1

2

3

P1

P2

P3

P4

เวลาที่มาถึงโปรเซส

P3P2 P1P4P1

0 10 17 2651

เวลาที่ไดใชซีพียู

เวลาที่มาถึง

Operating System 1 อ.สุขสันต บัวฉิมหนา 19

ถามีโปรเซสเขามาถึงคิวตามลําดับเวลาที่มาถึง P1, P2 , P3 และ P4

เวลาการคอยของ P1 = 0-0 , P2 = 8-1 ,P3 = 17-2 และ P4=12-3

คาเฉลี่ยของการคอย (0+7+15+9)/4 = 31/4 =7.75 วินาที

8

4

9

5

เวลาที่ใช

0

1

2

3

P1

P2

P3

P4

เวลาที่มาถึงโปรเซส

P3P2 P4P1

0 12 17 268

Operating System 1 อ.สุขสันต บัวฉิมหนา 20

จงหาคาเฉลี่ยเวลาของการคอย (Average waiting time)

จงหาคาเฉลี่ยเวลาของการคอย แบบใหสิทธิ และแบบไมใหสิทธิ

1

8

6

10

4

P1

P2

P3

P4

P5

ระยะเวลาที่ตองการซีพียู (Burst Time) (S)โปรเซส

10

9

3

9

3

เวลาที่ใช

0

2

4

6

7

P1

P2

P3

P4

P5

เวลาที่มาถึงโปรเซส

Page 6: Chapter 04 CPU Scheduling

Operating System 1 อ.สุขสันต บัวฉิมหนา 21 Operating System 1 อ.สุขสันต บัวฉิมหนา 22

ถาใหลําดับความสําคัญ เราจะสามารถจัดลําดับของโปรเซสไดดังนี้

คาเฉลี่ยของการคอย (6+0+16+18+1)/5 = 41/5 = 8.2 วินาที

3

1

3

4

2

ลําดับความสําคัญ

10

1

2

1

5

P1

P2

P3

P4

P5

เวลาที่ใชโปรเซส

P5 P4P1 P3P2

0 61 18 1916

Operating System 1 อ.สุขสันต บัวฉิมหนา 23

แบบใหสิทธิแทรกกลางคันไดโปรเซสใหมที่มีลําดับความสําคัญสูงกวาสามารถแทรกเขาไปทํางานแทนโปรเซสที่มีลําดับความสําคัญต่ํากวาที่กําลังทํางานอยูได

แบบไมใหสิทธิแทรกกลางคันโปรเซสใหมที่มีลําดับความสําคัญสูงจะถูกนําไปตอที่หัวแถว

ขอเสียโปรเซสที่มีลําดับความสําคัญต่ําอาจไมมีโอกาศไดเขาไปใชซีพียูเลย ปญหาการแชเย็น (Starvation), การรอคอยชั่วนิรันดร (Indefinite blocking)

โปรเซสที่มีลําดับความสําคัญสูงเขามาเรื่อยๆ ทําใหโปรเซสที่มีลําดับความสําคัญต่ําไมมีโอกาสทาํงาน

วิธีแกปญหาการเพิ่มลําดับความสําคัญ (Aging) เมื่อเวลาผานไปชวงเวลาหนึ่ง

Operating System 1 อ.สุขสันต บัวฉิมหนา 24

จงหาคาเฉลี่ยเวลาของการคอย (มาถึงพรอมกัน)

จงหาคาเฉลี่ยเวลาของการคอย แบบใหสิทธิ และแบบไมใหสิทธิ

2

3

1

3

4

ลําดับความสําคัญ

10

9

3

9

3

เวลาที่ใช

0

2

4

6

7

P1

P2

P3

P4

P5

เวลาที่มาถึงโปรเซส

2

3

1

0

ลําดับความสําคัญ

10

9

3

8

P1

P2

P3

P4

เวลาที่ใชโปรเซส

Page 7: Chapter 04 CPU Scheduling

Operating System 1 อ.สุขสันต บัวฉิมหนา 25

การจดัคิวแบบวนรอบ

ลักษณะเหมือน FCFS

มี Time Out เขามาเกี่ยวของเรียกวา ”เวลาควันตัม” (Quantum time)

แกปญหาการรอนาน ของโปรเซสที่ตองการทํางานนอยๆ

Operating System 1 อ.สุขสันต บัวฉิมหนา 26

rwrwrwrwrwwP3

rwP2

rrrwrwrwrwrwwrP1

1413121110987654321วินาที

8

1

5

เวลาที่ใช

P1

P2

P3

โปรเซส

สมมุติวา เราใหควันตัมไทมม เทากับ 1 วินาที

เวลาการคอยของ P1 = 11-5 , P2 =1 ,P3 = 10-4

คาเฉลี่ยของการคอย (6+1+6)/3 = 13/3 = 4.99 วินาที

P3 P1P3 P1P3 P1 P1P1P1P3P1P3P2P1

Operating System 1 อ.สุขสันต บัวฉิมหนา 27

8

1

5

เวลาที่ใช

P1

P2

P3

โปรเซส

ใหควันตัมไทมม เทากับ 4 วินาที

เวลาการคอยของ P1 = 9-4 , P2 =4 ,P3 = 13-4

คาเฉลี่ยของการคอย (5+4+9)/3 = 18/3 = 6 วินาที

P3P1P3P2P1

0 5 9 13 144

rwwwwrrrrwwwwwP3

rwwwwP2

rrrrwwwwwrrrrP1

1413121110987654321วินาที

Operating System 1 อ.สุขสันต บัวฉิมหนา 28

ใหควันตัมไทมม เทากับ 4 วินาที

เวลาการคอยของ P1 = 10-4 , P2 = 4 ,P3 = 7

คาเฉลี่ยของการคอย (6+4+7)/3 = 17/3 =5.66 วินาที

24

3

3

เวลาที่ใช

P1

P2

P3

โปรเซส

P1P1P1P1P1P3P2P14 7 10 14 18 22 26 300

rrrwwwwwwwP3

rrrwwwwP2

rrrrwwwwwwrrrrP1

30...121110987654321วินาที

Page 8: Chapter 04 CPU Scheduling

Operating System 1 อ.สุขสันต บัวฉิมหนา 29

P1 P2 P3 P4 P1 P3 P4 P1 P3 P3

0 20 37 57 77 97 117 121 134 154 162

53

17

68

24

เวลาที่ใช

P1

P2

P3

P4

โปรเซส

Operating System 1 อ.สุขสันต บัวฉิมหนา 30

Process time = 10 Context switch

12

1

6 1

0

9

0

0

0

10

106

1051 42 3 6 97 8

Quantum time

เมื่อ Quantum Time นอย จะทําให Context Switch Time มากขึ้นทําให OS เสียเวลากับการสลับ โปรเซส

Operating System 1 อ.สุขสันต บัวฉิมหนา 31

6

3

1

7

เวลาที่ใช

P1

P2

P3

P4

โปรเซส

Operating System 1 อ.สุขสันต บัวฉิมหนา 32

จงหาคาเฉลี่ยเวลาของการคอย (Average waiting time)

1

8

6

10

4

P1

P2

P3

P4

P5

เวลาที่ใชโปรเซส

10

9

3

9

3

P1

P2

P3

P4

P5

เวลาที่ใชโปรเซส

Page 9: Chapter 04 CPU Scheduling

Operating System 1 อ.สุขสันต บัวฉิมหนา 33

แบงระดบัชั้นของงานอยางชัดเจน

งานที่เปนฟอรกราวนด (Foreground) หรือ อินเตอรแอ็กทีฟ (Interactive) กับงานที่เปนแบค็กราวนด (Background) หรือ แบ็ตซ (Batch)

ใหลาํดับความสําคัญแกแตละคิวแตกตางกันไป

แตละคิวไมจําเปนตองเปนคิวประเภทเดียวกัน

ภายในแตละคิวจะมีการจัดตารางเวลาการทํางานที่แตกตางกันออกไป

โปรเซสในแถวหนึ่งๆไมสามารถเปลี่ยนแถวไดอีก

โปรเซสอาจมีการปรับระดับความสําคัญดวยการเลื่อนไปมาระหวางคิวได

การมีคิวหลายคิว เพื่อประสิทธิภาพในการใช CPU

Operating System 1 อ.สุขสันต บัวฉิมหนา 34

การจัดลาํดับความสําคัญแบบคงที่ (Fixed-priority preemptive

scheduling)

การจัดลําดับความสําคัญแบบเปลีย่นแปลงได (Variable-priority

preemptive scheduling) หรือ (Multilevel Feedback Queue Scheduling)

Operating System 1 อ.สุขสันต บัวฉิมหนา 35

System processes queue

Interactive processes queue

Interactive editing processes queue

Batch processes queue

Student processes queue

ระดบัความสําคัญสูงสุด (Highest priority)

ระดับความสําคัญต่ําสุด (Lowest priority)

Operating System 1 อ.สุขสันต บัวฉิมหนา 36

Page 10: Chapter 04 CPU Scheduling

Operating System 1 อ.สุขสันต บัวฉิมหนา 37

Quantum = 8

Quantum = 16

FCFS

Operating System 1 อ.สุขสันต บัวฉิมหนา 38

ตัวอยางเชน ระบบที่มีแถวพรอม 3 แถว คอื แถวที่ 0, 1 และ 2 ตามลําดับ โดยตัวจัดตารางการทํางานจะเริ่มจัดใหกระบวนการที่อยูในแถวที่ 0 ทํางานจนเสร็จหมดทั้งแถวเสียกอน จากนั้นจึงจะเริ่มจัดใหกระบวนการที่อยูในแถวที่ 1 ไดเขารับการทํางานตอไป ในทํานองเดียวกนัการทํางานของกระบวนการในแถวที่ 2 เริ่มไดก็ตอเมื่อกระบวนการในแถวที่ 0 และที่ 1 ทํางานจนเสร็จหมดแลว และในขณะที่กระบวนการที่อยูในแถวที่ 2 กําลังทํางานอยู ถามีกระบวนการใหมเขามาในแถวที่ 1 กระบวนการที่กําลังทํางานอยูในแถวที่ 2 จะถูกแทรกกลางคัน หรือในขณะที่กระบวนการในแถวที ่1 กําลังทํางานอยูนั้น ไดมีกระบวนการใหมเขามาในแถวที่ 0 กระบวนการที่กําลังทํางานอยูในแถวที่ 1 ก็จะถูกแทรกกลางคัน

Operating System 1 อ.สุขสันต บัวฉิมหนา 39

เชนเดียวกัน ถามีกระบวนการใหมเขามาในระบบ กระบวนการนั้นจะถูกจัดใหเขาทํางานในแถวที่ 0 แตถาไมอาจทํางานใหเสร็จสมบูรณไดภายใน 1 สวนแบงเวลาของแถวที่ 0 (ซึ่งมีคาเทากับ 8 มิลลิวินาที) กระบวนการนั้นจะถูกเลื่อน ลงไปตอขางทายของแถวที่ 1 และเมื่อกระบวนการในแถวที่ 0 ทํางานจนเสร็จหมดแลว ตัวจัดตารางการทํางานก็จะเริ่มมาจัดให กระบวนการที่อยูในแถวที่ 1 ไดทํางานตอไป โดยแถวที่ 1 นี ้(สวนแบงเวลามีคาเทากับ 16 มิลลวิินาที) ซึ่งถามีกระบวนการใดไมอาจทํางานใหเสร็จสมบูรณไดภายใน 1 สวนแบงเวลาที่กําหนด กระบวนการนั้นก็จะถูกนําไปตอทายของแถวที่ 2 ซึ่งเปนแถวสุดทายและมีการทํางานแบบมากอน-ไดกอน โดยกระบวนการทอียูในแถวสุดทายนี้จะไดทํางานก็ตอเมื่อ แถวที่ 0 และ 1 วางแลว

Operating System 1 อ.สุขสันต บัวฉิมหนา 40

จํานวนของคิว

วิธีของการจัดเวลาของแตละคิว

หลักเกณฑในการตัดสินใจเพิ่มความสําคัญของโปรเซส

หลักเกณฑในการตัดสินใจลดความสําคัญของโปรเซส

หลักเกณฑในการตัดสินใจนําเอาโปรเซสที่ตองการครอบครองซีพียู

มาเขาในคิว

Page 11: Chapter 04 CPU Scheduling

Operating System 1 อ.สุขสันต บัวฉิมหนา 41 Operating System 1 อ.สุขสันต บัวฉิมหนา 42

Operating System 1 อ.สุขสันต บัวฉิมหนา 43

สิ่งที่ตองคํานึงเปนอันดับแรกคือ การแชรโหลดใหกบัซีพียู (Load sharing)

เพื่อใหซีพียูแตละตัวมีงานทํามากพอๆ กัน

จะจัดใหระบบคิวมีเพียงระบบเดียว

ขอระวัง

ตองระวังไมใหโปรเซสใชฐานขอมูลในเวลาเดียวกัน

ระวังไมใหซีพียูวางงานพรอมกัน อาจจะทําใหมีการดึงเอาโปรเซสเดียวกันได

วิธีแก (เรียกวา Master-slave structure)

ทําซีพียูใหมีระดับที่แตกตางกัน คอื ซีพียูตัวใดตัวหนึ่งเปนตัวควบคุมสั่งการตอ

ซีพียูอีกตัวหนึ่งถัดไปอีก 1 ตัว และตัวถัดไปก็ควบคุมตอไปเรื่อย ๆ

Operating System 1 อ.สุขสันต บัวฉิมหนา 44

ตองการเวลาที่แนนอน ตายตัว โปรเซสจะไดรับเวลาจํานวนหนึ่งเพื่อ

ทํางานใหเสร็จ ตัวจัดตารางการทํางานจะใหสิทธิกระบวนการเพื่อ

รับประกันวากระบวนการจะทํางานเสร็จตามเวลา หรือไมก็ปฏิเสธ

การรองขอของกระบวนการนั้น ถามั่นใจวาจะทํางานไมเสร็จไดตาม

เวลา การทํางานแบบนี้ถูกเรียกวา การจองทรัพยากร (resource

reservation)

Page 12: Chapter 04 CPU Scheduling

Operating System 1 อ.สุขสันต บัวฉิมหนา 45

เปนระบบทีท่ํางานโดยไมตองมีเวลามาจํากัด นั่นหมายถึงจะมี

กระบวนการอยูกระบวนการหนึ่งมีศักดิ์สูงกวากระบวนการอื่น การ

ทํางานแบบ Soft Real-Time System อาจจะไมเหมาะกับ Time-Sharing

เพราะเกิดการลาชา (delay) หรือปญหาการแชเย็น (starvation) แต

เหมาะกับระบบทั่ว ๆ ไป ที่สนับสนุน multimedia กราฟฟก

Operating System 1 อ.สุขสันต บัวฉิมหนา 46

Operating System 1 อ.สุขสันต บัวฉิมหนา 47 Operating System 1 อ.สุขสันต บัวฉิมหนา 48

Time

interrupt

processing

conflicts

dispatch latency

dispatch

real-time

process

execution

response interval

event

Page 13: Chapter 04 CPU Scheduling

Operating System 1 อ.สุขสันต บัวฉิมหนา 49

ใหมีการใช CPU สูงสุด โดยใหมีเวลาตอบสนองไมเกิน 1 วินาที

ใหมี Throughput สูงสุด โดยที่เวลาวนรอบเปน สัดสวนโดยตรง

อยางพอเหมาะกับเวลาที่ตองใช ในการรันทั้งหมด

Operating System 1 อ.สุขสันต บัวฉิมหนา 50

Operating System 1 อ.สุขสันต บัวฉิมหนา 51

มากอนไดกอน (FCFS)

งานสั้นไดทํากอน (SJF)

เวลาวนรอบ (RR) โดยมี เวลาควันตัม (Quantum time) = 10 วินาที

โปรเซสทั้ง 5 มาถึงระบบที่เวลา 0 วินาที

Operating System 1 อ.สุขสันต บัวฉิมหนา 52

คาเฉลี่ยของการคอย (0+10+39+42+49)/5 = 140/5 = 28 วินาที

10

29

3

7

12

P1

P2

P3

P4

P5

เวลาที่ใชโปรเซส

P2 P5P3 P4P1

0 3910 49 6142

Page 14: Chapter 04 CPU Scheduling

Operating System 1 อ.สุขสันต บัวฉิมหนา 53

คาเฉลี่ยของการคอย (0+3+10+20+32)/5 = 65/5 = 13 วินาที

10

29

3

7

12

P1

P2

P3

P4

P5

เวลาที่ใชโปรเซส

P4 P2P1 P5P3

0 103 32 6120

Operating System 1 อ.สุขสันต บัวฉิมหนา 54

คาเฉลี่ยของการคอย (0+32+20+23+40)/5 = 115/5 = 23 วินาที

10

29

3

7

12

P1

P2

P3

P4

P5

เวลาที่ใชโปรเซส

P4 P2P5P2 P2P3 P5P1

0 2010 52 6140 5023 30

52-10-10

Operating System 1 อ.สุขสันต บัวฉิมหนา 55 Operating System 1 อ.สุขสันต บัวฉิมหนา 56

ใชสูตรในการคํานวณ

n = จํานวนงานที่อยูในคิว (โปรเซส)

W = เวลารอคอยเฉลี่ยในคิว (หนวยเวลา)

λ = คาเฉลี่ยของเวลาที่งานใหมจะเขามาถึงคิว(โปรเซส / หนวยเวลา)

Page 15: Chapter 04 CPU Scheduling

Operating System 1 อ.สุขสันต บัวฉิมหนา 57

กําหนดใหกระบวนการมาถึงระบบโดยเฉลี่ย 7 กระบวนการ/วินาที และแถวคอยมีความยาวเฉลี่ย 14 กระบวนการ ใหหาเวลารอคอยเฉลี่ยของแตละกระบวนการ

วิธีทํา

λλ

Operating System 1 อ.สุขสันต บัวฉิมหนา 58

เขียนโปรแกรมตวัแบบของระบบคอมพิวเตอร

จําลองอุปกรณตางๆในระบบ

เสมือนมเีหตุการณจริงเกิดขึ้น

ใชตัวแปรตางๆแทนความจริงทําไดทั้งแบบสุมหรือเก็บขอมูลจากระบบ

จริง

ทําการเก็บสถิติตางๆของระบบ

นํามาวิเคราะหประสิทธิภาพของวิธีการจัดตารางแบบตางๆได

Operating System 1 อ.สุขสันต บัวฉิมหนา 59

สรางอัลกอริทึมตางๆขึ้นมาจริงๆ เพื่อใชงานกับระบบจริง

ขอเสยี

คาใชจายสูงมาก

ใชเวลามาก

ใชแรงงานมาก

Operating System 1 อ.สุขสันต บัวฉิมหนา 60