Автор:
Евгений Кравцунов; Константин Трушкин
|
Facebook
Мой мир
Вконтакте
Одноклассники
Google+
|
Представляем три проекта российских разработчиков, получившие высокие экспертные оценки. Сегмент рынка, на котором применение решений на базе процессоров Эльбрус является экономически оправданным, определяется техническими преимуществами и уникальными особенностями архитектуры Эльбрус.
Сегмент рынка, на котором применение решений на базе процессоров Эльбрус является экономически оправданным, определяется техническими преимуществами и уникальными особенностями архитектуры Эльбрус. Процессоры Эльбрус имеют сильные стороны:
- высокая производительность на вычислительно-интенсивных задачах, за счет использования внутреннего параллелизма и широкого командного слова;
- аппаратная поддержка защищенных вычислений при умеренном тепловыделении.
Эти качества определяют два основных направления внедрения:
- бортовые системы (сложные встраиваемые системы, сочетающие в себе одновременно интенсивный обмен данными и вычисления);
- высокопроизводительные серверы, предназначенные для работы с большими данными, например, в соответствии с вычислительной парадигмой MapReduce.
С точки зрения экономики, обе эти области интенсивно развиваются. В ближайшие 10 лет прогнозируется рост спроса на такие технологии.
Для того чтобы эффективно внедрить решения в этих областях, необходимо ориентировать развитие операционных систем, работающих на Эльбрус, на решение следующих ключевых задач.
Бортовые системы
Энергопотребление
Задача эффективного управления энергопотреблением из ОС является важнейшей для внедрения процессоров Эльбрус-2с+, Эльбрус-4с в бортовое оборудование.
Бортовые системы должны функционировать при температуре окружающей среды до 850 С, а также при кратковременном воздействии температуры 950 С. При этом бортовые системы предполагают использование кондуктивного охлаждения в качестве первого контура охлаждения (вывод тепла на вторичный контур охлаждения исключительно с помощью радиатора).
Такие требования можно выполнить, только если в операционной системе используются высокоскоростные и эффективные алгоритмы принятия решений об отключении частоты на процессорных ядрах (пассивное охлаждение) приизменении температуры окружающей среды.
В этом направлении уже проведены исследования и сделаны определённые шаги. В процессорах Эльбрус-4С аппаратно поддержано отключение синхроимпульса и остановка конвейера команд в процессе ожидания появления значения изпамяти при считывании. Реализовано управление энергопотреблением из операционной системы.
Полученные наработки, совместно с новыми алгоритмами принятия решений на уровне операционной системы, позволят внедрить Эльбрус-4С в бортовые системы.
ОСРВ с микроядерной архитектурой, соответствие стандарту ARINC-653
Для создания высоконадёжных бортовых вычислительных систем реального времени был разработан стандарт ARINC 653, его первая ревизия была опубликована в 1996 году.
Стандарт предписывает определённую структуру операционной системы, аппаратной платформы, API для исполнения приложений. Стандарту соответствует микроядерная архитектура ОС, которая позволяет выполнять впривилегированном режиме только минимальное по функциональности и размеру ядро ОС. При этом драйверы устройств и серверы интерфейсов POSIX и ARINC-653 не входят в ядро, а выполняются в режиме пользователя.
Взаимодействие драйверов и серверов с ядром выполняется с помощью механизма сообщений, подразумевающего поддержку всего четырех системных вызовов. Такая архитектура минимизирует вероятность сбоев оборудования из-за программных ошибок, упрощает процессы тестирования и сертификации.
Стандарт ARINC 653 включает в себя применение специальных алгоритмов планирования задач по расписанию (изолированность задач по времени), а также изолированность задач по ресурсам памяти. Взаимодействие процессов, работающих в такой ОС, также реализуется путем использования механизмов сообщений и специализированных примитивов синхронизации.
В настоящее время работа по созданию ОС, совместимой с ARINC 653 (ОС «Эльбрус-653»), ведется компаний ООО «МЦСТ-Волга» (дочерняя компания ЗАО «МЦСТ»).
Работа микроядерной ОС в защищенном режиме
Технология защищённых вычислений – уникальная особенность процессоров Эльбрус. Известно, что значительная часть ошибок в работе ПО связана с некорректной работой приложения с оперативной памятью. Примером таких ошибок служат использование неинициализированных данных, при работе с каким-либо объектом - чтение и запись вне его границ, обращение к уже освобождённым областям памяти. В аппаратуре процессора Эльбрус реализован специальный режим исполнения программ, в котором каждое обращение в память проверяется на корректность с точки зрения сохранения целостности логической структуры.
Однако распространение использования «защищённого режима» сдерживается тем, что в существующем ПО массово применяются архитектурно-зависимые приёмы программирования, которые требуют корректировки при переходе в«защищённый режим». Другой проблемой является наличие множества скрытых ошибок в существующем ПО, которые будут выявляться при первом запуске ПО в защищённом режиме.
Микроядерная ОС «Эльбрус-653» не является универсальной, такой, как ОС «Эльбрус». Объем исходного текста ОС «Эльбрус-653» с учетом ядра, серверов устройств, серверов отладки и мониторинга и библиотек оценивается в 50 000 строк, что в 40 раз меньше исходного текста ОС «Эльбрус».
Фактор «обозримости» исходного текста позволяет внедрить в ОС «Эльбрус-653» использование аппаратной поддержки защищенного режима. Такая ОС не будет иметь аналогов в мире, так как будет позволять отлаживать драйверы устройств и сервера в защищенном режиме.
SDK для кросс-разработки, поддержка инструментов отладки типа target-host
Вопрос интеграции встраиваемых решений, основанных на ОС «Эльбрус» и ОС «Эльбрус-653» в существующие средства разработки программ ФПО, такие, как Eclipse, и наличие программного инструментария для кросс-разработки является одним из решающих факторов внедрения Эльбрус в бортовые системы.
Сейчас ведется работа по поддержке системы таргет-хост, обеспечивающей такую интеграцию. В перспективе предполагается развертывание репозиториев Eclipse с интегрированными средствами кросс-разработки для платформы Эльбрусна территории РФ с целью обеспечения постоянной доступности инструментов разработки ФПО.
Экономическая целесообразность внедрения в бортовые системы обусловлена потенциальным доходом от продажи решения типа COTS (аналог Green Hills http://www.ghs.com), то есть коробочного варианта ОС «Эльбрус-653», ориентированного на встраиваемые системы, а также доход от поддержки репозиториев с инструментами разработки (получение ARPU (https://ru.wikipedia.org/wiki/ARPU)).
Высокопроизводительные серверы, облачные вычисления
Серверы, построенные на микропроцессорах Эльбрус-4С, потенциально являются лучшими в области работы с большими данными (BigData). В этой области находятся пользователи, сталкивающиеся с необходимостью выполнения сложных расчетов, которые могут быть распараллелены, предназначенных для обработки огромного потока данных. При этом предполагается использование нереляционной базы данных (системы измерения скорости с помощью камер, научный расчет моделей физических явлений или обработка результатов экспериментальных измерений, например, на ускорителе частиц).
Важно, что в таких системах скорость обмена не является решающим фактором, так как общая производительность системы определяется количеством машин, работающих параллельно и выполняющих один и тот же алгоритм.
Для того чтобы решения на базе микропроцессоров Эльбрус можно было внедрить в системы BigData, и для реализации облачных вычислений на уровне операционной системы ОС «Эльбрус» должны быть решены следующие задачи.
Поддержка виртуализации
Облако может быть построено на одном многопроцессорном сервере, если на этом сервере работает ОС с поддержкой виртуализации. Виртуальные машины могут быть объединены в сеть за счет поддержки виртуальных сетевых устройств. Виртуальные машины позволяют более эффективно использовать аппаратные ресурсы большого сервера, отказ виртуальной машины не приводит с отказу сервера, виртуальные машины могут быть перемещены на другой физический сервер (миграция). Использование виртуальных машин также экономически целесообразно, то есть большая цена физического сервера является оправданной.
В настоящее время в ОАО «ИНЭУМ» выполняется работа, в рамках которой реализуется поддержка паравиртуализации, основанная на технологии QEMU-KVM. Выбор технологии обусловлен ее быстрым развитием и популярностью среди интеграторов, занимающихся созданием и поддержкой систем облачных вычислений.
Java, нереляционные базы данных
Для того чтобы серверы, построенные на Эльбрус (при наличии на них поддержки паравиртуализации QEMU-KVM), можно было интегрировать в существующие облака, необходимо поддержать хотя бы одну (а лучше обе) из двух наиболее популярных технологий создания облаков, основанных на парадигме MapReduce:
MongoDB – нереляционная база данных и инструментарий на python, предназначенный для параллельной обработки запросов на нескольких серверах;
Apache Hadoop – открытая реализация MapReduce с открытым исходным кодом на языке Java. Поддержка Java для Эльбрус в настоящее время реализована, также запланировано её дальнейшее развитие, прежде всего – повышение быстродействия Java-машины.
Облачный сервис отладки приложений в защищенном режиме
Серверы, построенные на базе процессоров «Эльбрус», работающие под управлением ОС с поддержкой виртуализации и MapReduce, могут предоставлять пользователям уникальный сервис отладки приложений и проектов в защищенном режиме. В этом случае доход будет формироваться не от продажи сервера, а от предоставления сервиса с помощью облака, то есть получения ARPU.
Facebook
Мой мир
Вконтакте
Одноклассники
Google+
|
|