В циклическом планировщике добавление процесса несколько раз в список процессов является дешевым способом придания ему более высокого приоритета.
Интересно, насколько практичным может быть такой подход. Какие преимущества он имеет по сравнению с другими методами, такими как предоставление процессу более длительного интервала времени (преимущество: меньшее время переключения) или ведение отдельного списка процессов с высоким приоритетом. В частности, как многократное перечисление процесса влияет на справедливость и реактивность?
(Из упражнения 2.16 в « Операционных системах Эндрю Таненбаума : разработка и реализация», 1-е изд.)
operating-systems
process-scheduling
Жиль "ТАК - перестань быть злым"
источник
источник
Ответы:
Преимущество этого подхода заключается в том, что циклическое планирование является очень эффективным, поэтому вам не нужно полагаться на более сложный планировщик, который бы украл циклы. Введение более длинных временных интервалов для процессов с более высоким приоритетом уменьшило бы скорость отклика других потоков и усложнило бы переход ОС к обработке прерываний и так далее. Ведение отдельных списков процессов потребовало бы гораздо более сложного планировщика, который был бы более дорогим с точки зрения циклов. Я не понимаю, как возникнет проблема со справедливостью. Я предполагаю, что проблема заключается в том, что степень детализации достаточно проста: процессы могут иметь только целые кратные базового временного интервала.
Одним из отрицательных моментов является то, что удаление процесса будет более дорогостоящим, поскольку каждое возникновение процесса должно быть удалено из очереди. Возможно, это можно сделать лениво, хотя.
источник
Добавление задачи в очередь планирования циклического перебора несколько раз открывает проблему обеспечения разумного распределения записей. Это легко проверить, если система не разрешает динамическое создание или удаление задач, но в целом это невозможно.
В дополнение к более сложному процессу удаления элементов из очереди, возможное искажение записей процесса в очереди приведет к несбалансированному поведению, которое легче сделать справедливым с несколькими уровнями приоритета.
источник