2004-gre-cs-practice-book.pdf/Q53

Материал из DISCOPAL
Перейти к: навигация, поиск

Вопрос: Q53-4c9f66

Что из перечисленного НЕ является разумным обоснованием выбора режима холостого цикла (busy wait) для асинхронного события?

Ответы

  • Ожидается, что ожидание будет недолгим
  • Холостой код проще накодить, чем обработчик прерываний
  • Процессору не нужно выполнять никакой другой задачи
  • Задача должна быть выполнена в сжатые сроки в режиме реального времени
  • Правильный ответ: Программа выполняется в системе с разделением времени

Объяснение

Исходники — вопрос 53 на 37 странице книги «2004-gre-cs-practice-book.pdf»

Важно помнить, отстойно гонять вхолостую CPU, пусть чем-нибудь полезным займется. Но иногда такой холостой ход оправдан.

  • «ожидание будет недолгим» — если реально короткое ожидаение, то переключение контекста на другие задачи или прерывание сьест больше, допустимо такое.
  • «холостой код проще накодить, чем обработчик прерываний» — иногда да, какие-нибудь встроенные системы, где мало ресурсов, или рилтайм оси…
  • «процессору не нужно выполнять никакой другой задачи» — ну если точно никому не повредит (десктоп там какой), то ладно.
  • «… должна быть выполнена в сжатые сроки в режиме реального времени» — тут даже речь не просто про экономию, а гарантированное время, а любые переключения гарантию убьют (шутка, что RTOS можно писать как угодно медленно, важно лишь чтобы гарантии ответа укладывались)
  • «… выполняется в системе с разделением времени … » — ну а тут конечно непростительно, просто сжигание времени-и-энергии, блокировка ресурсов, похеривание идеи мультитаскинга.

[ Хронологический вид ]Комментарии

(нет элементов)

Войдите, чтобы комментировать.