Page 15 - สถาปัตยกรรมคอมพิวเตอร์และระบบปฏิบัติการ
P. 15
การจัดเวลาซีพียูและก ารต ิดต าย 11-5
เรอ่ื งท่ี 11.1.1
แนวคิดพ้นื ฐานเกี่ยวก บั การจ ดั เวลาซีพยี ู
1. เกณฑ์การจ ดั เวลาซ พี ียู
วิธีการคัดเลือกโพรเซสเพื่อเข้าใช้ซีพียูนั้นมีหลายขั้นตอนวิธีหรืออัลกอริทึม (algorithm) บางอัลกอริทึมมี
ความเหมาะส มส ำ�หรบั โพรเซส หน ึ่งแ ตไ่มเ่หมาะส มส ำ�หรบั อ ีกโพรเซส หน ึ่ง การเลือกอ ลั ก อรทึ มึ ท ีด่ ขี ึน้ อ ยกู่ บั ห ลายป ัจจยั
ซึ่งส ่งผ ลต ่อป ระสิทธิภาพของก ารประมวลผล
เกณฑ์ทั่วไปท ี่นำ�มาใช้ในก ารต ัดสินใจในก ารค ัดเลือกอัลกอร ิท ึมก ารจัดเวลาซ ีพียู (CPU scheduling algo-
rithm) ประกอบด้วย
1.1 อรรถป ระโยชนข์ องซ พี ยี ู (CPU utilization) เปน็ การว ดั เปอรเ์ ซน็ ตก์ ารท �ำ งานข องซ พี ยี ู ระบบค อมพวิ เตอร์
ที่ดีต้องพยายามให้ซีพียูใช้งานอย่างคุ้มค่าและเหมาะสม ไม่น้อยเกินไปและไม่มากเกินไป ในทางปฏิบัติ ถ้าค่า
อ รรถประโยชน์ม ีค ่าเท่ากับ 40% แสดงว ่าเป็นร ะบบท ี่ม ีก ารป ระมวลผ ลน ้อย แ ละถ ้าม ีค ่าเท่ากับ 90% แสดงว ่าเป็นร ะบบ
ที่มีก ารประมวลผ ลม าก
1.2 ปริมาณงานต่อหน่วยเวลา (throughput) เป็นการวัดจำ�นวนโพรเซสที่สามารถประมวลผลเสร็จภายใน
หนึ่งห น่วยเวลา เช่น ในหนึ่งชั่วโมงส ามารถป ระมวลผ ลเสร็จได้ 50 โพรเซสย่อมด ีกว่าประมวลเสร็จเพียง 20 โพรเซส
ซึ่งค่า throughput ขึ้นอยู่ก ับข นาดของโพรเซสด้วย
1.3 เวลาค รบร อบง าน (turnaround time) เปน็ การว ดั ร ะยะเวลาต ัง้ แตเ่ ริม่ ส ง่ โพรเซส มาป ระมวลผ ลจ นก ระทัง่
ประมวลผ ลเสร็จส ิ้น ซึ่งร วมร ะยะเวลาก ารร อค อยท ั้งหมดในก ารป ระมวลผ ล ถ้าค ่าเวลาค รบร อบง านมีค ่าน ้อยแ สดงว ่า
ระบบมีป ระสิทธิภาพที่ดี
1.4 เวลารอคอย (waiting time) เป็นการวัดผลรวมของระยะเวลารอคอยทั้งหมดที่ใช้ในการประมวลผล
ค่า waiting time ที่ม ีค ่าต ํ่าจ ะเป็นต ัวว ัดความสามารถของก ารป ระมวลผ ลของระบบ
1.5 เวลาตอบสนอง (response time) เป็นการวัดเวลาการต อบสนองของระบบ โดยว ัดระยะเวลาทั้งหมดเริ่ม
จากการส่งความต ้องการในก ารป ระมวลผ ลจนก ระทั่งเริ่มม ีก ารโต้ตอบผลลัพธ์ (start responding) เท่านั้น เวลาใน
การต อบส นองท ีด่ ตี ้องม คี ่าทีต่ ํ่า ค่าทีไ่ดไ้มร่ วมร ะยะเวลาท ีม่ กี ารป ระมวลผ ลโต้ตอบจ นผ ลลัพธถ์ ูกแ สดงออกม าท ั้งหมด
เพราะการโต้ตอบไปม าระหว่างร ะบบกับผู้ใช้ข ึ้นอ ยู่ก ับช นิดและค วามเร็วข องอ ุปกรณ์
จากทั้ง 5 เกณฑ์น ี้เป็นปัจจัยในการคัดเลือกอ ัลก อริทึม ควรเฉลี่ยให้ทุกเกณฑ์ม ีค ่าที่เหมาะสม
2. อัลก อร ทิ มึ สำ�หรับก ารจ ดั การเวลาซพี ยี ู
อัลก อร ทิ ึมส ำ�หรับก ารจ ัดการเวลาซ ีพียมู หี ลายว ิธกี าร เช่น มาก ่อนไดก้ ่อน (first-Come first-Served sched-
uling) งานสั้นได้ทำ�ก่อน (shortest job first scheduling) การจัดเวลาตามความสำ�คัญ (priority scheduling)
เวียนเทียนหรือราวโรบิน (round robin scheduling) คิวห ลายร ะดับ (multilevel queue scheduling) คิวหลาย
ระดับย ้อนกลับ (multilevel feedback queue scheduling) ดังจะกล่าวโดยละเอียดต ่อไปน ี้
2.1 มาก่อนได้ก่อน (First-Come, First-Served Scheduling: FCFS) เป็นวิธีการคัดเลือกโพรเซส
ที่ง่ายที่สุด ถ้าโพรเซสใดที่เข้ามาขอใช้บริการจะถูกนำ�มาเก็บอยู่ใน ready queue ตามลำ�ดับก่อนหลังและ
โพรเซสที่จะถูกเลือกให้ประมวลผลเป็นโพรเซสที่อยู่ลำ�ดับต้นและโพรเซสลำ�ดับต่อมาจะถูกเลือกต่อมาเป็นไปตาม
ลำ�ดับก ่อนห ลัง