Please enable JavaScript.
Coggle requires JavaScript to display documents.
บทที่ 6 กำหนดการใช้ซีพียู - Coggle Diagram
บทที่ 6
กำหนดการใช้ซีพียู
หลักความต้องการพื้นฐาน
ช่วงเวลาอินพุต/เอาต์พุต และช่วงเวลาใช้ซีพียู (I/O and CPU Burst Cycle)
ตัวจัดการเวลาซีพียู
การให้สิทธิกํารจัดเวลา
(Preemptive Scheduling)
การตัดสินใจของซีพียูในการเลือกให้โพรเซสใด ๆ ทำงาน
เมื่อมีการเปลี่ยนสถานะของโพรเซสจากสถานะรัน ไปเป็นสถานะคอย
เมื่อมีการเปลี่ยนสถานะของโพรเซสจากรัน เป็นสถานะพร้อม
เมื่อมีการเปลี่ยนสถานะของโพรเซสจากสถานะคอย
เมื่อโพรเซสเสร็จสิ้นหรือสิ้นสุดการดำเนินการ
ตัวส่งต่อ (Dispatcher)
การย้าย Context
การย้ายไป User mode
กระโดดไปยังตำแหน่งที่เหมาะสมของโปรแกรม เพื่อที่จะเริ่มรันโปรแกรมนั้นใหม่อีกครั้ง
เกณฑ์การวิเคราะห์ประสิทธิภาพ
มีการใช้งานหน่วยประมวลผลกลาง (CPU utilization)
มีปริมาณงานมากที่สุด (Throughput)
มีเวลาครบวงงานน้อยที่สุด (Turnaround time)
มีเวลารอน้อยที่สุด (Waiting time)
มีเวลาตอบสนองน้อยที่สุด (Response time)
อัลกอริทึมของการจัดเวลา
First-Come, First-Served (FCFS) Scheduling
Shortest-Job-First (SJF) Scheduling
Shortest-remaining-time-first
Priority Scheduling
Round-Robin Scheduling: RR
คิวหลายระดับ
การจัดตารางการทำงานแบบจัดลำดับหลายชั้นแบบเลื่อนชั้นได้
(Multilevel Feedback Queue Scheduling)
จำนวนแถวพร้อม
ขั้นตอนวิธีในการจัดตารางการทำงานของแต่ละแถว
วิธีที่จะใช้ในการพิจารณาเพื่อที่จะยกระดับให้โพรเซสที่มีค่าศักดิ์สูงขึ้น
วิธีที่จะใช้ในการพิจารณาเพื่อที่จะลดระดับให้โพรเซสที่มีค่าศักดิ์น้อยลง
วิธีที่จะใช้ในการพิจารณาว่า เมื่อโพรเซสเข้ามาในระบบ ควรจะให้อยู่ในแถวใด
การจัดตารางการทำงานสำหรับหลายหน่วยประมวลผล
ให้หน่วยประมวลผลแต่ละตัวจัดตารางการทำงานเอง โดยเลือกงานจากแถวคอยเดียวกัน
2.กำหนดให้หน่วยประมวลผลหนึ่งมีหน้าที่จัดตารางการทำงานโดยเฉพาะ คอยจัดตารางการทำงานให้ทุก ๆ หน่วยที่เหลือ
การจัดตารางการทำงานแบบตอบสนองฉับพลัน
Hard Real-Time System
ต้องการเวลาที่คงที่แน่นอนตายตัว โดยทั่วไปโพรเซสจะได้รับเวลาจำนวนหนึ่งเพื่อนำไปทำงานให้เสร็จ ตัวจัดตารางการทำงานจะให้สิทธิโพรเซส เพื่อรับประกันว่าโพรเซสจะทำงานเสร็จตามเวลา หรือไม่ก็ปฏิเสธการร้องขอของโพรเซสนั้น ถ้ามั่นใจว่าจะทำงานไม่เสร็จได้ตามเวลา
Soft Real-Time System
เป็นระบบที่ทำงานโดยไม่ต้องมีเวลามาจำกัด นั่นหมายถึงจะมีโพรเซสอยู่โพรเซส
หนึ่งมีลำดับความสำคัญสูงกว่าโพรเซสอื่น
การประเมินอัลกอริทึม
การกำหนดโมเดล (Deterministic Modeling)
วิธีมาก่อน-ได้ก่อน (FCFS)
วิธีสั้นที่สุดได้ก่อน (SJF)
วิธีเวียนเทียน (RR) (ส่วนแบ่งเวลา = 10 มิลลิวินาที)
การวิเคราะห์แถว (Queuing Models)
การจำลองสถานการณ์(Simulations)
เราอาจจำลองเหตุการณ์จริงขึ้น โดยเขียนโปรแกรมตัวแบบของระบบคอมพิวเตอร์ และจำลองอุปกรณ์ต่าง ๆ ในระบบด้วยโครงสร้างข้อมูลที่เหมาะสม
การปฏิบัติจริง (Implementation)
วิธีนี้มีปัญหาสำคัญ คือ ค่าใช้จ่ายสูงมาก ไม่เพียงแต่ค่าใช้จ่ายในการเขียนโปรแกรมและแก้ไขระบบปฏิบัติการเท่านั้น แต่ยังมีผลกระทบต่อผู้ใช้โดยตรงด้วย เพราะจะต้องมีการแก้ไขระบบบ่อย ๆ นอกจากนี้การเปรียบเทียบวิธีต่าง ๆ ด้วยวิธีนี้อาจได้ไม่ถูกต้อง เพราะสภาพแวดล้อมของระบบอาจเปลี่ยนไป