Page 39 - สถาปัตยกรรมคอมพิวเตอร์และระบบปฏิบัติการ
P. 39
การจัดเวลาซีพียูแ ละการติดต าย 11-29
เวลา โพรเซสทอี่ ยใู่ น ready queue ระยะเวลาเข้าใชซ้ พี ยี ูท่ีตอ้ งการ โพรเซสท่เี ขา้ ใช้ซพี ียู
(มิลลวิ ินาท)ี R
R 9—5=4
S 6—5=1
42 Q
T 16 — 5 — 5 — 5 = 1
13 — 5 = 8
- เวลา 42 มิลลิวินาที โพรเซส T ถูกขัดจังหวะเพื่อให้โพรเซส R เข้าใช้ซีพียู
- โพรเซสที่อยู่ในคิว ณ เวลานี้มีทั้งหมด 4 โพรเซส โดยโพรเซส R ต้องการใช้ซีพียูอีก 4 มิลลิวินาที
โพรเซส S และโพรเซส Q ต้องการเวลาใช้ซีพียูอีก 1 มิลลิว ินาที สำ�หรับโพรเซส T ต้องการเวลาใช้ซ ีพียูอ ีก 8 มิลลิวินาที
- ระบบจะให้โพรเซสต่าง ๆ เข้าใช้ซีพียูเป็นลำ�ดับตามร ะยะเวลาท ี่ต ้องการต่อเนื่องกันไป จนกระทั่งเวลา 56
มิลลิวินาที ส ิ้นสุดก ารป ระมวลผล
สรุปคา่ เวลารอค อยและเวลาค รบรอบง าน ได้ดังนี้
โพรเซส เวลารอคอย (มิลลวิ ินาท)ี เวลาครบรอบงาน (มิลลวิ นิ าที)
P (10 — 5) + (25 — 15) = 15 27
Q (5 — 0) + (15 — 10) + (32 — 20) + (47 — 37) = 32 48
R (20 — 11) + (42 — 25) = 26
S (27 — 17) + (46 — 32) = 24 (46 — 11) = 35
T (37 — 23) + (48 — 42) = 20 (47 — 17) = 30
(15 + 32 + 26 + 24 + 20)/5 = 23.4 (56 — 23) = 33
คา่ เฉลี่ย (27 + 48 + 35 + 30 + 33)/5 = 34.6
จากตัวอย่างข้างต้นเห็นได้ว่า ถ้าการประมวลผลมี n โพรเซสและระยะเวลาควอนตัมเท่ากับ q หน่วยเวลา
พบว่าแต่ละโพรเซสจะรอคอยไม่เกิน (n — 1)*q หน่วยเวลาจึงได้รับการประมวลผลครั้งต่อไป ซึ่งทำ�ให้แต่ละ
โพรเซสมีโอกาสรอคอยนานในเวลาเท่า ๆ กัน ในการกำ�หนดระยะเวลาควอนตัมควรมีการกำ�หนดให้เหมาะสม หาก
กำ�หนดระยะเวลานานเกินไปจะได้ผลใกล้เคียงหรือเหมือนกับวิธีมาก่อนได้ก่อน แต่ถ้ากำ�หนดระยะเวลาควอนตัม
สั้นเกินไปทำ�ให้การประมวลผลแต่ละโพรเซสเสร็จช้าลง เนื่องจากเสียเวลาจากการเวียนเทียนเพื่อเข้าใช้ซีพียูของ
โพรเซสหล ายร อบจ ึงป ระมวลผ ลเสร็จ
2.5 คิวห ลายระดบั (multilevel queue scheduling) เป็นวิธีการที่แบ่ง ready queue ออกเป็นห ลาย ๆ ระดับ
ความส ำ�คัญเพื่อต อบสนอ งโพรเซสท ี่ต้องการเวลาตอบส นอง (response time) ที่แตกต ่างกัน เมื่อโพรเซสใหม่เข้าม า
ในระบบ ระบบปฏิบัติการจะกำ�หนดให้โพรเซสอยู่ใน ready queue ที่เหมาะสมซึ่งขึ้นอยู่กับคุณสมบัติของโพรเซส
นั้น ๆ การกำ�หนดค วามส ำ�คัญข องแ ต่ละ ready queue นั้นอ าจแ บ่งได้จากขนาดของห น่วยค วามจ ำ�ที่โพรเซสต้องการ
(memory size) หรือความส ำ�คัญข องโพรเซส (priority) หรือประเภทข องโพรเซส เป็นต้น ในแต่ละ ready queue