Red Hat Enterprise MRG Realtime. Linux реального времени – война за микросекунды::БИТ 02.2012
 
                 
Поиск по сайту
 bit.samag.ru     Web
Рассылка Subscribe.ru
подписаться письмом
Вход в систему
 Запомнить меня
Регистрация
Забыли пароль?

Календарь мероприятий
сентябрь    2019
Пн
Вт
Ср
Чт
Пт
Сб
Вс
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30

показать все 

Новости партнеров

17.09.2019

Деловой сезон начинается: бесплатное обучение и сервисы от MBM.MOS.RU

Читать далее 

16.09.2019

Основа нашей работы – сотрудничество

Читать далее 

13.09.2019

Деловой завтрак «Цифровизация строительной отрасли»

Читать далее 

13.09.2019

На Oracle Systems Advantage Forum клиенты узнали, как получить выгоду из 2,5 квинтиллионов байт данных

Читать далее 

показать все 

Статьи

31.08.2019

Кадры для цифровой среды

Читать далее 

29.08.2019

Пора менять модель?

Читать далее 

28.08.2019

Тормозы для маркетинга

Читать далее 

27.08.2019

Может ли Россия стать центром высокотехнологичного экспорта?

Читать далее 

24.08.2019

Искусственный интеллект в России: перспективы и препятствия

Читать далее 

04.06.2019

Маркетолог: привлекать, продавать, продвигать?

Читать далее 

04.06.2019

Бонусы за лояльность

Читать далее 

04.06.2019

Прощайте, доктора?

Читать далее 

04.06.2019

Между В2В и В2С – сплошная двойная

Читать далее 

04.06.2019

Компьютеры + медицина = синергия

Читать далее 

показать все 

Red Hat Enterprise MRG Realtime. Linux реального времени – война за микросекунды

Главная / Архив номеров / 2012 / Выпуск №2 (15) / Red Hat Enterprise MRG Realtime. Linux реального времени – война за микросекунды

Рубрика: Технологии


 Алексей Ермаковинженер. Работает в НЦПР, участвует в проектах по виртуализации Red Hat

Red Hat Enterprise MRG Realtime
Linux реального времени – война за микросекунды

В бортовых системах, в системах управления на производстве и на транспорте счет идет на микросекунды. В финансовом мире роботы соревнуются с роботами, и выигрывает тот, кто оказывается быстрее на доли секунды. Для таких задач, когда просто «быстро» недостаточно и нужно «гарантированно быстро», существуют системы реального времени

Операционные системы реального времени «на пальцах»

Основная задача ОС реального времени – обеспечить гарантированное время отклика для задачи. Если необходимо, чтобы критичный процесс получал процессорное время не реже, чем каждые 100 микросекунд, то ОС должна это гарантировать. Если нагрузка растет и система не справляется с ней, второстепенные задачи могут пострадать, но критичный процесс все равно должен получать свое процессорное время каждые 100 микросекунд.

Такие жесткие ограничения применимы далеко не всегда. Разумеется, от любых приложений и информационных систем всегда хотят, чтобы они работали быстро. Обычно это означает «чтобы пользователю было комфортно и не приходилось ждать». Для большинства задач задержки в десятую долю секунды или даже в секунду никто просто не заметит. Если иногда для каких-то отдельных запросов задержки и возникают, это не страшно, если в среднем система отвечает быстро.

У ОС реального времени другой приоритет – для них неприемлемо «в среднем быстро», у них должно быть «гарантированно быстро для каждого отдельного запроса». Решение этой задачи требует другого подхода к внутренней архитектуре. Поэтому ОС реального времени и операционные системы общего назначения – это разные классы систем.

Red Hat Enterprise MRG Realtime: основные особенности

Одной из наиболее распространенных систем реального времени является Red Hat Enterprise MRG Realtime. Технически MRG Realtime – это набор пакетов, превращающих стандартный Red Hat Enterprise Linux (RHEL) в ОС реального времени. MRG Realtime состоит фактически из двух компонентов – ядра реального времени, заменяющего стандартное ядро RHEL, и набора инструментов для настройки и тонкой профилировки.

MRG Realtime обеспечивает для критичных к задержкам задач стабильное время отклика с разрешением вплоть до микросекунд. Разница в скорости обработки событий стандартной ОС общего назначения и MRG Realtime наглядно видна из рис. 1.

Рисунок 1. Время обработки события системой на базе стандартного ядра Linux и на базе MRG Realtime

Рисунок 1. Время обработки события системой на базе стандартного ядра Linux и на базе MRG Realtime

На графике красным показано время обработки событий системой на базе стандартного ядра Linux и зеленым – системой на базе MRG Realtime. По оси X отложен номер события, по оси Y – время обработки в микросекундах. Масштаб времени по шкале Y логарифмический. Обычное ядро в среднем тратит на обработку одного события 9 мкс со стандартным отклонением 54.94 мкс. Ядро MRG Realtime позволяет достичь значения 8 мкс со стандартным отклонением 1.49 мкс.

Чтобы такие результаты стали возможны, в ядро MRG Realtime было внесено заметное количество изменений по сравнению со стандартным ядром RHEL – переработаны механизмы работы с блокировками, включены таймеры высокого разрешения, невытесняемые участки кода ядра разбиты на минимальные блоки, сделан ряд других оптимизаций.

Но все же основная особенность MRG Realtime не в этом. Главное отличие MRG Realtime от других ОС реального времени в том, что фактически, кроме ядра, не изменено ничего (строго говоря, изменения были, но они уже внесены в апстрим). Сегодня API RHEL и API MRG одинаковы, с точки зрения приложений они ничем не отличаются, и это позволяет запустить на MRG Realtime все то же программное обеспечение, которое было написано и собрано для RHEL.

В результате становится возможным крайне быстро перенести приложения на ОС реального времени и начать работать с ними в новой среде. Разумеется, это не гарантирует, что все мгновенно заработает с микросекундными задержками. Внедрение MRG Realtime – это всегда процесс взаимной оптимизации приложений, системы и инфраструктуры. Тем не менее крайне важно, что для начала работы не нужно что-либо переписывать и заново отлаживать. Можно сначала запустить систему с привычными приложениями, измерить полученные задержки на разных этапах обработки, после чего для достижения целевых показателей вносить правки только там, где они оказались объективно нужны.

Где это работает

Области применения систем реального времени разнообразны.

В телекоммуникациях для обеспечения качества связи. Так, на базе MRG Realtime работает оборудование Alcatel-Lucent [4].

В финансовом секторе – на биржах и в инвестиционных банках, где роботы соревнуются с роботами и «время – деньги». Большинство мировых компаний в этой области перешло на MRG Realtime, среди российских компаний ее используют ММВБ [2] и «Тройка-Диалог» [3].

В военных системах, когда время уже даже не деньги, а гораздо больше. Например, MRG Realtime активно используется в проекте Zumwalt Destroyer ВМФ США [5].

  1. Материалы по MRG Realtime (на английском) – http://www.redhat.com/products/mrg/realtime.
  2. Опыт использования MRG Realtime в ММВБ – http://www.cnews.ru/news/line/index.shtml?2011/12/09/468195.
  3. Опыт использования MRG Realtime в «Тройка-Диалог» – http://www.pcweek.ru/foss/wp/detail.php?ID=130860.
  4. MRG Realtime в оборудовании Alcatel-Lucent – http://www.europe.redhat.com/news/article/2373.html.
  5. Разработка системы реального времени для Zumwalt Destroyer – http://press.redhat.com/about/news/blog/red-hat-enterprise-mrg-red-hat-customer-driven-innovation-and-open-source-leadership.

В начало⇑

 

Комментарии отсутствуют

Комментарии могут отставлять только зарегистрированные пользователи

Выпуск №06 (89) 2019г.
Выпуск №06 (89) 2019г. Выпуск №05 (88) 2019г. Выпуск №04 (87) 2019г. Выпуск №03 (86) 2019г. Выпуск №02 (85) 2019г. Выпуск №01 (84) 2019г.
Вакансии на сайте Jooble

           

Tel.: (499) 277-12-41  Fax: (499) 277-12-45  E-mail: sa@samag.ru

 

Copyright © Системный администратор

  Яндекс.Метрика