Описание тега real-time

Задача выполняется в режиме реального времени, когда своевременность выполнения действий является функциональным требованием и условием правильности, а не просто показателем производительности. Система реального времени - это система, в которой некоторые (хотя, возможно, не все) задачи являются задачами реального времени. НЕ ИСПОЛЬЗУЙТЕ ЭТОТ ТЭГ, если вы имеете в виду "реальный мир".

Определение

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

Системы реального времени

Термин " реальное время" используется по крайней мере двумя различными способами при обращении к компьютерным системам:

  • В академическом смысле реального времени программа или система являются "работающими в реальном времени", когда они подвержены ограничениям времени выполнения, например крайним срокам. Такие системы делятся на мягкое и жесткое реального времени. Корректность реализации зависит не только от значений, создаваемых программой, но и от времени, в которое эти значения создаются.

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

В Википедии есть полезное обсуждение.

Детерминизм

Некоторые участники, особенно в оборонном и аэрокосмическом сообществе, вместо этого используют такие термины, как критичный по времени или динамический критический по времени, для обозначения систем, которые имеют ограничения в реальном времени. Термин " реальное время" иногда является проблематичным, поскольку он подразумевает детерминизм (который не всегда требуется или даже желателен), а также имеет багаж очень конкретной теории и истории реализации. Тем не менее, существуют высокодинамичные системы, которые, тем не менее, имеют временные ограничения, и много времени на разработку уходит на использование комбинации жесткого и мягкого подходов в реальном времени и специальных хаков для удовлетворения этих требований.

Если у меня есть система с четко определенными задачами, и я хочу сказать, что задача X должна завершиться к моменту t с вероятностью 0,95, это жесткая или мягкая задача в реальном времени?

Состав задач

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

Фонды

Вот несколько основных вопросов о Stackru и других ресурсах, которые помогут понять концепции реального времени:

Управление ресурсами

Обеспечение того, чтобы действия в системе реального времени обычно основывались на характеристике потребностей деятельности в ресурсах и последующем управлении ресурсами для их удовлетворения.

Характеристика потребностей в ресурсах обычно включает, по крайней мере, анализ времени выполнения. Распространенной мерой является время выполнения наихудшего случая (WCET), которое обычно определяется комбинацией эмпирических данных и анализа. Кроме того, часто бывает необходимо улавливать другие потребности в ресурсах, такие как ввод-вывод, или "логические" ресурсы, такие как блокировки / мьютексы / семафоры. Распространенным показателем в этом параметре является фактор блокировки.

После того, как деятельность была охарактеризована, применяются четкие дисциплины для обеспечения своевременности. Исторически это делалось полностью вручную, например, с использованием шаблона циклического исполнительного проектирования. Если система построена на многопроцессорной или многопоточной платформе, необходимо использовать дисциплины планирования и синхронизации. Наиболее распространенный тип планировщика в ОСРВ - это планировщик приоритетов, в котором готовые действия получают процессорное время в порядке их выраженного приоритета. В то время как временные ограничения для большинства операций в реальном времени сформулированы в терминах крайних сроков, немногие ОСРВ или никакие ОСРВ не предоставляют явный планировщик крайних сроков. Вместо этого периодическим или спорадическим действиям с детерминированными крайними сроками назначаются приоритеты с использованием Оцените монотонный анализ (RMA), чтобы сопоставить их с фиксированными приоритетами.

Стандарты

Реализация / Платформы

В этом разделе будут обобщены язык, операционные системы, промежуточное ПО и другие компоненты реализации, общие в системах RT.

Примеры

FAQs