Round-robin scheduling: อนุญาตให้แสดงรายการกระบวนการหลายครั้งหรือไม่


9

ในตัวจัดกำหนดการแบบ round-robin การเพิ่มกระบวนการหลายครั้งในรายการกระบวนการเป็นวิธีที่ประหยัดเพื่อให้ความสำคัญสูงกว่า

ฉันสงสัยว่าวิธีนี้อาจเป็นไปได้ในทางปฏิบัติ มันมีประโยชน์อะไรที่มีมากกว่าเทคนิคอื่น ๆ เช่นการทำให้กระบวนการใช้เวลานานขึ้น (ประโยชน์: เวลาเปลี่ยนน้อยลง) หรือรักษารายการแยกต่างหากของกระบวนการที่มีลำดับความสำคัญสูง โดยเฉพาะอย่างยิ่งการแสดงรายการกระบวนการหลายครั้งมีผลต่อความยุติธรรมและปฏิกิริยาที่เกิดขึ้นอย่างไร

(จากแบบฝึกหัด 2.16 ในระบบปฏิบัติการของ Andrew Tanenbaum : การออกแบบและการนำไปใช้งานครั้งที่ 1)


Tannenbaum เขียนหนังสือหลายเล่ม สันนิษฐานว่าคุณหมายถึงระบบปฏิบัติการ
Dave Clarke

@DaveClarke ใช่ขอบคุณที่ชี้ให้เห็น (และที่จริงแล้วสิ่งที่ฉันมีที่นี่คือการแปล แต่ฉันไม่คิดว่ามันจะหายไปส่วนใดส่วนหนึ่งของข้อความ)
Gilles '

คำตอบ:


4

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

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


2

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

นอกเหนือจากกระบวนการที่ซับซ้อนมากขึ้นในการลบรายการออกจากคิวการบิดเบือนรายการในกระบวนการในที่สุดจะส่งผลให้เกิดพฤติกรรมที่ไม่สมดุลซึ่งง่ายต่อการสร้างความยุติธรรมด้วยระดับความสำคัญหลายระดับ


ความปรารถนาที่จะมีลำดับความสำคัญไม่ได้ห้ามความเป็นธรรมหรือไม่?
Raphael
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.