 |
Меню |
|
|
|
|
 |
Главная |
|
| Посл.ответ |
Сообщение |
|
Дата: 2 Окт, 09:51 · Поправил: bessonov3
Есть материал:
1. http://www.swd.ru/index.php3?pid=383 :
Такое наследование приоритетов при обмене сообщениями дает гарантию, что задача, выполняемая по заказу низкоприоритетного клиента, всегда будет вытеснена задачей от высокоприоритетного клиента.
2. http://www.swd.ru/index.php3?pid=638 :
Карусельная диспетчеризация
При карусельной диспетчеризации процесс продолжает выполнение, пока не наступит момент, когда он:
* добровольно уступает управление (т.е. блокируется);
* вытесняется процессом с более высоким приоритетом;
* использовал свой квант времени (timeslice).
По выше приведённым ссылкам получается, что задача с высоким приоритетом может монопольно захватить процессор, при этом задача с низким приоритетом не выполниться ни когда.
Раньше я всегда думал, что ОС может называться real-time когда каждый процесс, не важно с каким приоритетом, обязательно получит свой квант времени.
Какое правильное понимание термина real-time:
1. задача с высоким приоритетом может монопользо захватить процессор
2. задачи с низким приоритетом, всегда получит свой квант времени за определённый период времени
или скорее всего чегото не понимаю
Прошу прощения, за тупой вопрос, который обсуждался много раз, но тем не менее... |
|
Дата: 2 Окт, 10:46
|
|
Дата: 2 Окт, 10:58
4.1 Диспетчеризация потоков
Является ли это свойство обязательным для real-time системы?
При наличии в системе одной группы потоков с одним приоритетом и другой группы с другим, более низким приоритетом, то при карусельной диспетчеризации каждой группы в системе с приоритетной многозадачностью потоки низкоприоритетной группы могут вообще не получить доступа к процессору.
Теряется ли свойство real-time?
Таким образом, при карусельной многозадачности, очередь (или «карусель») более приоритетных потоков не может полностью заблокировать выполнение очереди менее приоритетных потоков.
или свойство real-time означает только, что система за гарантированный промежуток времени обработает прерываение, а вопрос диспетчеризации потоков к термину real-time отношения не имеет?
|
|
Дата: 2 Окт, 11:16
|
|
Дата: 2 Окт, 12:05 · Поправил: bessonov3
ksv
Adaptive Partitioning тебя спасет ...
Спасибо, но это я так понимаю решение проблемы шедуллинга. У меня вопрос по терминологии, т.е. в каких случаях система имеет свойство real-time, а в каких нет. Понимаю, вопррос глупый, но надо разбраться, что входит в понятие real-time, кроме гарантированной отработки прерывания за определённый период времени.
|
|
Дата: 2 Окт, 12:19 · Поправил: ZZZ
Прошу прощения, не могли бы яснее осветить суть мучающей Вас проблемы. Есть ОСРВ. Всякая "приличная" ОСРВ имеет набор различных политик диспетчеризации. Решение о применении той или иной принимает разработчик конкретного продукта.
"Карусель" является одной из политик. Которая, как Вы правильно говорите, не предоставит время для низкоприоритетного процесса, пока весь ресурс процессора выгребается высокоприоритетным процессом. Операционная система, в которой запущена данная политика, ни с какого перепугу не теряет свойства своей реалтаймовости.
С уважением, ZZZ
|
|
Дата: 2 Окт, 12:30
ZZZ
Операционная система, в которой запущена данная политика, ни с какого перепугу не теряет свойства своей реалтаймовости.
Спасибо. Т.е. в термин real-time входит только гарантированно максимальное время реакции на прерывание?
|
|
Дата: 2 Окт, 13:45
Ну Вы же сами даёте ссылку на qnxclub. Там тема реалтаймовости муссировалась, помнится, увлечённо. Да, если упрощать, вульгаризировать - то гарантированное время отклика является основополагающим признаком ОСРВ (уж по меньшей мере условием необходимым). Но до кучи ещё разного. Вот, например, как я выше "ввёл" понятие "приличной"  ОСРВ - способной, в частности, исполняться с разными политиками диспетчеризации.
С уважением, ZZZ |
|
Дата: 2 Окт, 14:04 · Поправил: bessonov3
ZZZ
Но до кучи ещё разного. Вот, например, как я выше "ввёл" понятие "приличной" ОСРВ - способной, в частности, исполняться с разными политиками диспетчеризации.
Ещё с давних пор в процессе чтения форума в моей памяти отложилось, что необходимый признак ОСРВ это когда задачи с низким приоритетом, всегда получит свой квант времени за определённый период времени. Сегодня всплыло, что в qnx можно создать ситуацию, когда один процесс монопольно захватывает время процессора. Меня это очень удивило. Теперь всё стало на свои места.
|
|
Дата: 2 Окт, 18:23 · Поправил: Evgeniy
bessonov3
Ещё с давних пор в процессе чтения форума в моей памяти отложилось, что необходимый признак ОСРВ это когда задачи с низким приоритетом, всегда получит свой квант времени за определённый период времени. Сегодня всплыло, что в qnx можно создать ситуацию, когда один процесс монопольно захватывает время процессора. Меня это очень удивило. Теперь всё стало на свои места.
Посмотрите [url=http://qnxclub.net/files/articles/RemarksOnTheMargins/RemarksOnTheMargins.html
]http://qnxclub.net/files/articles/RemarksOnTheMargins/RemarksOnTheMargins.html
[/url]
Возможно там вы найдете ответ на свои сомнения. Вы уже практически вплотную подошли к главной мысли тех заметок ("Сегодня всплыло, что в qnx можно создать cитуацию..." ) - понятие реального времени применимо только к системе управления в целом, но не к ее компонентам, а "ОСРВ" - это просто достаточно гибкая, надежная, проверенная и промеренная ОС, удовлетворяющая требованиям целевой системы управления и на которой удобно оную систему реализовывать  |
|
Дата: 2 Окт, 20:44
Исторически понятие "реальное время" возникло как противовес "пакетному режиму" работы первых ЭВМ, при котором ввод данных и вывод результатов вычислений были значительно разделены во времени. Инженеры бежали в комнату с АЦПУ за распечатками, и по их циферкам корректировали свои модели или параметры установки.
Когда вычислительной мощности стало хватать для выдачи управляющих воздействий на объект непосредственно во время его функционирования, для этого радостного события придумали специальный термин "Система реального времени". Таким образом, согласно определению тех лет, "СРВ" обозначала способность ЭВМ "самостоятельно" управлять объектом. В этом плане о "реалтаймовости" ОС можно судить только по отношению к управляемому объекту. Для "кофеварки с Интернетом" и Windows сойдет
А вот это bessonov3 гарантированно максимальное время реакции на прерывание - лишь одно из свойств ОСРВ... |
|
Дата: 3 Окт, 06:29
Исторически понятие "реальное время" возникло как противовес "пакетному режиму" работы первых ЭВМ,
Мне почему-то помнится, что противовесом "пакетному режиму" был "интерактивный" или иногда по другому называемый "диалоговый" режим (причем сторонники последнего термина как правило очень интересно ставили ударение в этом слове).
Для "кофеварки с Интернетом" и Windows сойдет
ОСРВ это не пилюля, которая гарантирует реалтаймовость всего и вся выполняющегося на этой операционке, это инструмент, который позволяет решить реалтаймовую задачу. Теперь о критериях, которые отличают реалтаймовую задачу от не реалтаймовой (во всяком случае как меня учили в школе):
1) входные данные должны обрабатываться в темпе их поступления, выходные данные должны быть гарантировано просчитаны с заданым темпом (темп = дискрета времени)
2) существует жесткое ограничение на задержку данных, т.е. на их устаревание.
Если нет второго критерия (или времена на устаревания данных на порядки больше темпа их поступления) нет никакого риалтайма. И если виндовз иногда задумывается о своем на пол секунды, то это не проблема, надо на входах поставить аппаратные буферы файфо, которые гарантировано не переполнятся за время задумчивости, а проц выбрать чтобы производительности хватило обработать буферы до следующего момента задумчивости. Одно только но, если система управления будет вырабатывать воздействия руководствуюсь данными в огромных буферах, т.е. с пол-секундным, скажем, отставанием, может получится очень нехорошо.
"кофеварка с Интернетом" не попадает в критерий реалтаймовых задач, даже если предположить, что программно считываются датчики температуры и управляется нагреватель. Нету жесткого ограничения, худшее, что может произойти - ну пожар, ну сгорит дом Била Гейтса или еще такого же, ведь нормальному человеку нужна кофеварка отдельно, а интернет отдельно  |
|
Дата: 3 Окт, 09:13
Evgeniy
ОСРВ" - это просто достаточно гибкая, надежная, проверенная и промеренная ОС, удовлетворяющая требованиям целевой системы управления и на которой удобно оную систему реализовывать
Спасибо, уже успел посмотреть. Особенно на меня произвело впечатление:
Все приведенные в этих заметках аргументы убеждают (по крайней мере, меня лично), что фактически сегодня RTOS – это просто добротно спроектированная и отлаженная многозадачная ОС, а применимость конкретной системы в той или иной системе управления определяется соотношением стоимостных, временных и надежностных требований, предъявляемых к системе управления. потому что в данном случае ни чего не упоминается о максимальном гарантированном времени обработки прерывания. На этом же сайте, в другой статье об этом сказано.
При хожу к выводу, что термин real-time ОС не устоявшийся, каждый включает в него то что хочет.
|
|
Дата: 3 Окт, 09:15
GrayCat
Для "кофеварки с Интернетом" и Windows сойдет
Получается NetBSD для тостера тоже ОСРВ  |
|
Дата: 3 Окт, 11:09
Существует еще один вариант требования к realtime системе:
Система реального времени должна давать отклик на любые непредсказуемые внешние воздействия за предсказуемый интервал времени
|
|
Дата: 3 Окт, 11:12
ksv
Тогда возникает вопрос, что есть внешние воздействия ? Это прерывания и ни чего больше?
предсказуемый интервал времени - т.е. за определённый максимальный интервал времени?
|
|
Дата: 3 Окт, 11:41
Тогда возникает вопрос, что есть внешние воздействия ? Это прерывания и ни чего больше?
Вероятно, это все возможные события (в т.ч. и прерывания), время возникновения которых заранее неизвестно (непредсказуемо), т.е. апериодично по отношению к циклу работы системы реального времени, но которые должны быть обработаны в течение заранее известного (предсказуемого) интервала времени.
предсказуемый интервал времени - т.е. за определённый максимальный интервал времени?
Да, не более чем за максимальный (т.е. предсказуемый) интервал времени.
|
You must login to post.
| | |