Preemptive vs. Non-Preemptive Scheduling ในระบบปฏิบัติการ

ผู้เขียน: Laura McKinney
วันที่สร้าง: 4 เมษายน 2021
วันที่อัปเดต: 18 พฤษภาคม 2024
Anonim
Preemptive and Non-Preemptive Scheduling
วิดีโอ: Preemptive and Non-Preemptive Scheduling

เนื้อหา

ความแตกต่างที่สำคัญระหว่างการกำหนดเวลาแบบ preemptive และ non-preemptive ในระบบปฏิบัติการคือการกำหนดเวลาแบบ preemptive จะเกิดขึ้นเมื่อกระบวนการทำงานจากสถานะการทำงานไปยังสถานะพร้อมในขณะที่การกำหนดเวลาแบบไม่ยึดเอาเสียก่อนเกิดขึ้นเมื่อกระบวนการสิ้นสุดลง


ระบบปฏิบัติการเป็นสะพานเชื่อมระหว่างผู้ใช้กับซอฟต์แวร์ระบบปฏิบัติการในวิทยาการคอมพิวเตอร์เป็นแนวคิดที่สำคัญที่สุด ในระบบปฏิบัติการการกำหนดเวลาแบบ preemptive และ non-preemptive เป็นแนวคิดที่สำคัญที่สุด

มีตัวกำหนดตารางเวลาของ CPU ที่รับผิดชอบในการจัดสรรกระบวนการให้กับ CPU ตัวกำหนดตารางเวลาของ CPU รอให้ CPU ว่างและเมื่อทรัพยากรของ CPU ว่างจะทำให้เกิดกระบวนการอื่น การกำหนดตารางเวลาแบบ Preemptive เกิดขึ้นเมื่อกระบวนการรันจากสถานะการทำงานไปยังสถานะพร้อมในขณะที่การกำหนดเวลาแบบไม่ต้องเสียสิทธิ์จะเกิดขึ้นเมื่อกระบวนการกำลังสิ้นสุดลง ในการกำหนดตารางเวลาไว้ล่วงหน้ากระบวนการสามารถกำหนดเวลาได้ในขณะที่กระบวนการจัดตารางเวลาที่ไม่ต้องเสียสิทธิ์ไม่สามารถกำหนดตารางเวลาได้การเตรียมการล่วงหน้าเกิดขึ้นเมื่อกระบวนการสลับจากสถานะกำลังทำงานเป็นสถานะพร้อม ในการกำหนดเวลา CPU รอบการจองไว้ล่วงหน้าจะถูกจัดสรรให้ดำเนินการและนั่นเป็นช่วงเวลาที่ จำกัด กระบวนการที่ต้องรออยู่ในคิวพร้อมและรอให้ CPU แตก กระบวนการต้องอยู่ในคิวพร้อมจนกว่า CPU จะพร้อมสำหรับการดำเนินการ จากนั้นมีลำดับความสำคัญที่กระบวนการที่จะมาพร้อมกับลำดับความสำคัญสูงจะได้รับทรัพยากรก่อนจากนั้นกระบวนการที่มีลำดับความสำคัญน้อยกว่า กระบวนการทั้งหมดนี้เรียกว่าการกำหนดตารางเวลาไว้ล่วงหน้า Robin Robin เป็นตัวอย่างของการกำหนดตารางเวลาไว้ล่วงหน้า


การจัดตารางเวลาที่ไม่ต้องเสียสิทธิ์เกิดขึ้นเมื่อกระบวนการกำลังสิ้นสุดลง เมื่อกระบวนการมีทรัพยากรโดย CPU และเมื่อทรัพยากรถูกใช้โดยกระบวนการนั้นกระบวนการนั้นจะถูกยกเลิกโดย CPU การกำหนดเวลาล่วงหน้าขัดจังหวะกระบวนการทันทีที่กระบวนการที่มีลำดับความสำคัญสูงเข้ามาและในกรณีของการกำหนดเวลาที่ไม่ต้องเสียภาษีจะไม่มีการหยุดชะงักและกระบวนการจะสิ้นสุดลงเมื่อกระบวนการเสร็จสมบูรณ์ เมื่อกระบวนการที่มี CPU burst time ที่ยาวนานกำลังดำเนินการกระบวนการจะต้องรอและด้วยวิธีนี้เวลารอเฉลี่ยจะเพิ่มขึ้น

สารบัญ: ความแตกต่างระหว่างการกำหนดเวลาแบบ Preemptive และ Non-Preemptive ในระบบปฏิบัติการ

  • แผนภูมิเปรียบเทียบ
  • กำหนดเวลาไว้ล่วงหน้า
  • กำหนดการที่ไม่ต้องเสียภาษี
  • ความแตกต่างที่สำคัญ
  • ข้อสรุป
  • วิดีโออธิบาย

แผนภูมิเปรียบเทียบ

รากฐานกำหนดเวลาไว้ล่วงหน้ากำหนดการที่ไม่ต้องเสียภาษี
ความหมายการกำหนดตารางเวลาแบบล่วงหน้าเกิดขึ้นเมื่อกระบวนการรันจากสถานะการทำงานไปยังสถานะพร้อม

การจัดตารางเวลาที่ไม่ต้องเสียสิทธิ์เกิดขึ้นเมื่อกระบวนการกำลังสิ้นสุดลง


 

ขัดจังหวะ มีการหยุดชะงักในการกำหนดตารางเวลาไว้ล่วงหน้าไม่มีการหยุดชะงักในการกำหนดเวลาที่ไม่ต้องเสียภาษี
คล่องตัว การกำหนดเวลาไว้ล่วงหน้านั้นมีความยืดหยุ่นการกำหนดเวลาที่ไม่ต้องเสียภาษีไม่ยืดหยุ่น
ราคา การกำหนดตารางเวลาไว้ล่วงหน้านั้นคุ้มค่าการจัดตารางเวลาที่ไม่ต้องเสียค่าธรรมเนียมนั้นไม่มีประสิทธิภาพ

กำหนดเวลาไว้ล่วงหน้า

การกำหนดเวลาล่วงหน้าเกิดขึ้นเมื่อกระบวนการสลับจากสถานะการทำงานเป็นสถานะพร้อม ในการกำหนดตารางเวลาไว้ล่วงหน้ารอบ CPU จะถูกจัดสรรให้ดำเนินการและนั่นเป็นช่วงเวลาที่ จำกัด กระบวนการที่ต้องรออยู่ในคิวพร้อมและรอให้ CPU แตก กระบวนการต้องอยู่ในคิวพร้อมจนกว่า CPU จะพร้อมสำหรับการดำเนินการ จากนั้นมีลำดับความสำคัญที่กระบวนการที่จะมาพร้อมกับลำดับความสำคัญสูงจะได้รับทรัพยากรก่อนจากนั้นกระบวนการที่มีลำดับความสำคัญน้อยกว่า กระบวนการทั้งหมดนี้เรียกว่าการกำหนดตารางเวลาไว้ล่วงหน้า Robin Robin เป็นตัวอย่างของการกำหนดตารางเวลาไว้ล่วงหน้า

กำหนดการที่ไม่ต้องเสียภาษี

การจัดตารางเวลาที่ไม่ต้องเสียสิทธิ์เกิดขึ้นเมื่อกระบวนการกำลังสิ้นสุดลง เมื่อกระบวนการมีทรัพยากรโดย CPU และเมื่อทรัพยากรถูกใช้โดยกระบวนการนั้นกระบวนการนั้นจะถูกยกเลิกโดย CPU การกำหนดเวลาล่วงหน้าขัดจังหวะกระบวนการทันทีที่กระบวนการที่มีลำดับความสำคัญสูงเข้ามาและในกรณีของการกำหนดเวลาที่ไม่ต้องเสียภาษีจะไม่มีการหยุดชะงักและกระบวนการจะสิ้นสุดลงเมื่อกระบวนการเสร็จสมบูรณ์ เมื่อกระบวนการที่มี CPU burst time ที่ยาวนานกำลังดำเนินการกระบวนการจะต้องรอและด้วยวิธีนี้เวลารอเฉลี่ยจะเพิ่มขึ้น

ความแตกต่างที่สำคัญ

  1. การกำหนดตารางเวลาแบบ Preemptive เกิดขึ้นเมื่อกระบวนการรันจากสถานะการทำงานไปยังสถานะพร้อมในขณะที่การกำหนดเวลาแบบไม่มีการยึดเอาไว้จะเกิดขึ้นเมื่อกระบวนการกำลังสิ้นสุดลง
  2. มีการขัดจังหวะในการกำหนดเวลาไว้ล่วงหน้าในขณะที่ไม่มีการหยุดชะงักในการกำหนดเวลาที่ไม่ต้องเสียภาษี
  3. การกำหนดตารางเวลาแบบ preemptive นั้นมีความยืดหยุ่นในขณะที่การกำหนดเวลาแบบ preemptive นั้นไม่ยืดหยุ่น
  4. การกำหนดเวลาล่วงหน้าเป็นต้นทุนที่มีประสิทธิภาพในขณะที่การกำหนดตารางเวลาไว้ล่วงหน้านั้นไม่คุ้มค่า

ข้อสรุป

ในบทความด้านบนนี้เราจะเห็นความแตกต่างที่ชัดเจนระหว่างการกำหนดเวลาแบบ preemptive และ non-preemptive พร้อมตัวอย่าง

วิดีโออธิบาย