Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Билеты 2026.docx
Скачиваний:
0
Добавлен:
31.01.2026
Размер:
140.26 Кб
Скачать

27. Планирование в системах реального времени.

  Планирование в системах реального времени – это организация выполнения потоков и задач с учётом строгих временных ограничений, при которых результаты должны быть получены в заранее заданные сроки. Задачи делятся на жёсткие, для которых пропуск недопустим, и мягкие, где пропуск возможен без критических последствий. ОС использует специальные алгоритмы планирования, чтобы гарантировать соблюдение временных ограничений.

  Rate Monotonic (RM)статический приоритетный алгоритм, при котором задачи с меньшим периодом повторения получают более высокий приоритет. Чем чаще задача должна выполняться, тем выше её приоритет. Этот метод подходит для периодических задач и гарантирует предсказуемое выполнение при известной загрузке процессора.

  Deadline Monotonic (DM)статический приоритетный алгоритм, схожий с RM, но приоритет присваивается в зависимости от ближайшего срока завершения задачи (deadline). Задача с более ранним сроком завершения получает более высокий приоритет, что позволяет точнее учитывать критичность времени выполнения и минимизировать вероятность пропуска сроков.

  Earliest Deadline First (EDF)динамический алгоритм, при котором приоритет задачи определяется её ближайшим сроком завершения. Задача, у которой deadline наступает раньше всего, выполняется в первую очередь. Этот метод обеспечивает оптимальное использование процессора и максимальное количество задач, выполняемых в срок, но требует динамического отслеживания всех сроков.

  Цель планирования в системах реального времени – обеспечить предсказуемое и своевременное выполнение критичных задач, минимизировать пропуски сроков и поддерживать стабильную работу системы при одновременном выполнении нескольких задач.

28. Алгоритм планирования Windows nt.

Алгоритм планирования Windows NT – это многопроцессорный вытесняющий алгоритм планирования потоков с использованием приоритетов и квантов времени, применяемый в ОС Windows NT и её производных.

Каждому потоку присваивается статический и динамический приоритет в диапазоне от 0 (минимальный) до 31 (максимальный), при этом системные потоки имеют более высокий приоритет, чем пользовательские. Планировщик распределяет процессорное время по принципу вытеснения, отдавая предпочтение потокам с более высоким приоритетом.

Для потоков одного приоритета используется round-robin с квантами времени, после чего управление передаётся следующему потоку того же уровня. Динамический приоритет позволяет изменять приоритет потоков в зависимости от их активности, блокировок и ввода-вывода, что повышает отзывчивость системы и предотвращает голодание.

Алгоритм обеспечивает эффективное и справедливое распределение процессорного времени, сочетая преимущества вытесняющей многозадачности с контролем приоритетов потоков.

29. Алгоритмы планирования Linux: о(1).

Алгоритм планирования Linux O(1) – это вытесняющий алгоритм планирования потоков, применявшийся в ядре Linux до версии 2.6, который обеспечивал постоянное время (O(1)) принятия решения о следующем потоке к выполнению, независимо от числа потоков в системе.

Каждому потоку присваиваются два приоритета: статический, задающий базовую важность потока, и динамический, который корректируется планировщиком во время работы в зависимости от активности потока и ожидания ресурсов. При выборе следующего потока фактически учитывается динамический приоритет, что позволяет сочетать справедливость и отзывчивость. Выбор следующего потока выполняется за фиксированное время: планировщик просто выбирает первый готовый поток в самой приоритетной непустой очереди.

Алгоритм поддерживает вытесняющую многозадачность, round-robin для потоков с одинаковым приоритетом и динамическое обновление приоритетов для повышения отзывчивости интерактивных задач. Основное преимущество O(1) – высокая масштабируемость и предсказуемость работы планировщика независимо от числа потоков, однако он не учитывал сложные требования к справедливости между потоками разного приоритета, что позже привело к разработке CFS.