Реальное время — режим работы автоматизированной системы обработки информации и управления, при котором учитываются ограничения на временны́е характеристики функционирования.
Примеры временных характеристик и связанных с ними ограничений:
- deadline — дедлайн — предельный срок завершения какой-либо работы;
- latency — латентность — время отклика (задержка реакции) системы на внешние события;
- jitter — джиттер — разброс значений времени отклика.
Также (преимущественно, в материалах рекламного и коммерческого характера) встречаются термины:
- жёсткое реальное время — режим работы системы, при котором нарушение временных ограничений равнозначно отказу системы;
- мягкое реальное время — режим работы системы, при котором нарушения временных ограничений приводят к снижению качества работы системы.
Система реального времени (СРВ) — это любая система, работающая в режиме реального времени.
Назначение
Назначение систем, работающих в режиме реального времени, — взаимодействие с объектами внешнего (по отношению к системе) мира в темпе процессов, протекающих в этих объектах. Как правило, система реального времени должна:
- либо по собственной инициативе воздействовать на внешние процессы в заданные моменты времени;
- либо реагировать на внешние события, происходящие на объекте, в течение заданных интервалов времени.
За своевременность воздействий на объект отвечает характеристика deadline. Задержка реакции на внешнее событие характеризуется значениями latency и jitter.
Примеры
Примеры систем, работающих в режиме реального времени:
Особенности систем реального времени, управляющих технологическими процессами
Основной особенностью является необходимость использования специализированных программных, аппаратных и алгоритмических решений:
- Промышленных компьютеров, промышленных контроллеров, программируемых логических контроллеров, микроконтроллеров и прочих вычислительных устройств с архитектурой, оптимизированной для использования в сфере автоматизации;
- Операционных систем (ОС) реального времени, таких как QNX, OS-9, VxWorks и пр.;
- SCADA-пакетов и инструментальных сред типа LabVIEW;
- «языков реального времени», к которым относят языки, обладающие встроенными возможностями многозадачного программирования, например Modula-2 и Ada[1];
- оборудования УСО, обладающего предсказуемыми временными характеристиками (мультиплексоров, ЦАП и АЦП и пр.);
- «индустриальных СУБД»[2];
- «промышленных» шин, интерфейсов и протоколов для построения распределенных автоматизированных систем (RS-485, RS-422, RS-232, Modbus, Profibus, CANBus, VMEbus, IndustrialEthernet, IEEE-488 и т. п.);
- специальных алгоритмов[3].
Проблемы
При создании систем реального времени приходится решать проблемы привязки внутрисистемных событий к моментам времени, своевременного захвата и освобождения системных ресурсов, синхронизации вычислительных процессов, буферизации потоков данных и т. п. Системы реального времени обычно используют специализированное оборудование (например, таймеры) и программное обеспечение (например, Операционные системы реального времени).
См. также
Ссылки
- http://lib.mexmat.ru/books/35733 Янг С. Языки реального времени
- http://www.asutp.ru/?p=600373 Любашин А. Н. Реляционные базы данных и IndustrialSQL Server — база данных реального времени
- http://logic.pdmi.ras.ru/~hirsch/students/effalg-2001/lecture3.pdf Гирш Э. Алгоритмы, работающие в реальном времени