ОСРВ волшебным образом не превращает ваш код в «реальное время»;скорее он поддерживает реальное время, будучи полностью детерминированным.
Операционная система общего назначения (GPOS), такая как Linux, обычно использует планировщик совместного использования времени с равным приоритетом с циклическим перебором, что обеспечивает справедливое распределение времени среди ряда процессов.Таким образом, чем более обработан процесс и чем он занят (используя больше доступного временного интервала), тем менее отзывчивым он становится.
С другой стороны, ОСРВ, как правило, имеет планировщик на основе преимущественного приоритета, так что задача с наивысшим приоритетом запускается немедленно, независимо от того, и будет продолжать работать до тех пор, пока она не приостановит себя или задачу с более высоким приоритетом.становится готовым.В такой системе вы должны назначать приоритеты соответствующим образом, чтобы гарантировать, что все задачи выполняются вовремя каждый раз.Обычно задачи с самым коротким и наиболее детерминированным временем выполнения должны иметь самый высокий приоритет.Критически важно, что ОСРВ поддерживает детерминированное поведение в режиме реального времени, на разработчика возлагается большая ответственность за правильное проектирование задач и приоритетов.
Таким образом, вы не можете просто запустить какой-либо произвольный сторонний код и ожидать, что он продемонстрирует реальныйвыступлениеВам нужно написать конкретный тест.В самом простом случае у вас может быть процесс, который блокирует периодический таймер с коротким периодом, и в этой задаче выведите реальное время и проанализируете, сколько джиттера синхронизации вы наблюдаете.Система реального времени должна иметь минимальное дрожание (в зависимости от ее приоритетных и высокоуровневых задач или выполняемых прерываний) и не должна зависеть от задач с более низким приоритетом, в то время как GPOS будет демонстрировать гораздо большую изменчивость, особенно при выполнении других задач.
Существует опция планировщика в реальном времени для сборки Linux, но она далека от совершенства.Если вы оказываетесь в отделении интенсивной терапии по вопросам жизнеобеспечения, немного волнуйтесь, если респиратор работает под управлением Linux!