2004-gre-cs-practice-book.pdf/Q53 — различия между версиями
Материал из DISCOPAL
StasFomin (обсуждение | вклад) (Новая страница: « == Вопрос: Q53-4c9f66 == <i>Тут вставьте перевод вопроса. Используйте [https://wiki.4intra.net/Help:%D0%A4%D0%BE%D1%80…») |
StasFomin (обсуждение | вклад) |
||
Строка 1: | Строка 1: | ||
− | |||
== Вопрос: Q53-4c9f66 == | == Вопрос: Q53-4c9f66 == | ||
− | + | Что из перечисленного '''НЕ является''' разумным обоснованием выбора режима | |
− | + | [https://ru.wikipedia.org/wiki/%D0%A5%D0%BE%D0%BB%D0%BE%D1%81%D1%82%D0%BE%D0%B9_%D1%86%D0%B8%D0%BA%D0%BB холостого цикла] (''busy wait'') для асинхронного события? | |
− | + | ||
− | + | ||
− | + | ||
=== Ответы === | === Ответы === | ||
− | + | * Ожидается, что ожидание будет недолгим | |
− | + | * Холостой код проще накодить, чем обработчик прерываний | |
+ | * Процессору не нужно выполнять никакой другой задачи | ||
+ | * Задача должна быть выполнена в сжатые сроки в режиме реального времени | ||
+ | * Правильный ответ: Программа выполняется в системе с разделением времени | ||
− | + | === Объяснение === | |
− | + | {{cstest-source|2004-gre-cs-practice-book.pdf|37|53}} | |
− | + | ||
− | + | ||
− | + | ||
− | + | Важно помнить, отстойно гонять вхолостую CPU, пусть чем-нибудь полезным займется. | |
− | + | Но иногда такой холостой ход оправдан. | |
− | Но | + | |
+ | * «ожидание будет недолгим» — если реально короткое ожидаение, то переключение контекста на другие задачи или прерывание сьест больше, допустимо такое. | ||
+ | * «холостой код проще накодить, чем обработчик прерываний» — иногда да, какие-нибудь встроенные системы, где мало ресурсов, или рилтайм оси… | ||
+ | * «процессору не нужно выполнять никакой другой задачи» — ну если точно никому не повредит (десктоп там какой), то ладно. | ||
+ | * «… должна быть выполнена в сжатые сроки в режиме реального времени» — тут даже речь не просто про экономию, а гарантированное время, а любые переключения гарантию убьют (шутка, что RTOS можно писать как угодно медленно, важно лишь чтобы гарантии ответа укладывались) | ||
+ | * «… выполняется в системе с разделением времени … » — ну а тут конечно непростительно, просто сжигание времени-и-энергии, блокировка ресурсов, похеривание идеи мультитаскинга. | ||
− | + | {{question-ok|[[Участник:StasFomin|StasFomin]] 22:32, 15 декабря 2024 (UTC)}} | |
− | + | ||
− | {{ | + | |
− | + | ||
− | + | ||
− | + | [[Категория:Параллельные вычисления]] |
Текущая версия на 22:32, 15 декабря 2024
Вопрос: Q53-4c9f66
Что из перечисленного НЕ является разумным обоснованием выбора режима холостого цикла (busy wait) для асинхронного события?
Ответы
- Ожидается, что ожидание будет недолгим
- Холостой код проще накодить, чем обработчик прерываний
- Процессору не нужно выполнять никакой другой задачи
- Задача должна быть выполнена в сжатые сроки в режиме реального времени
- Правильный ответ: Программа выполняется в системе с разделением времени
Объяснение
Исходники — вопрос 53 на 37 странице книги «2004-gre-cs-practice-book.pdf»
Важно помнить, отстойно гонять вхолостую CPU, пусть чем-нибудь полезным займется. Но иногда такой холостой ход оправдан.
- «ожидание будет недолгим» — если реально короткое ожидаение, то переключение контекста на другие задачи или прерывание сьест больше, допустимо такое.
- «холостой код проще накодить, чем обработчик прерываний» — иногда да, какие-нибудь встроенные системы, где мало ресурсов, или рилтайм оси…
- «процессору не нужно выполнять никакой другой задачи» — ну если точно никому не повредит (десктоп там какой), то ладно.
- «… должна быть выполнена в сжатые сроки в режиме реального времени» — тут даже речь не просто про экономию, а гарантированное время, а любые переключения гарантию убьют (шутка, что RTOS можно писать как угодно медленно, важно лишь чтобы гарантии ответа укладывались)
- «… выполняется в системе с разделением времени … » — ну а тут конечно непростительно, просто сжигание времени-и-энергии, блокировка ресурсов, похеривание идеи мультитаскинга.