Операционная система Embox: решение для встроенных систем
www.samag.ru
Льготная подписка для студентов      
Поиск   
              
 www.samag.ru    Web  0 товаров , сумма 0 руб.
E-mail
Пароль  
 Запомнить меня
Регистрация | Забыли пароль?
О журнале
Журнал «БИТ»
Подписка
Где купить
Авторам
Рекламодателям
Магазин
Архив номеров
Вакансии
Контакты
   

Jobsora

ЭКСПЕРТНАЯ СЕССИЯ 2019


  Опросы

Какие курсы вы бы выбрали для себя?  

Очные
Онлайновые
Платные
Бесплатные
Я и так все знаю

 Читать далее...

1001 и 1 книга  
28.05.2019г.
Просмотров: 1826
Комментарии: 2
Анализ вредоносных программ

 Читать далее...

28.05.2019г.
Просмотров: 1887
Комментарии: 1
Микросервисы и контейнеры Docker

 Читать далее...

28.05.2019г.
Просмотров: 1446
Комментарии: 0
Django 2 в примерах

 Читать далее...

28.05.2019г.
Просмотров: 1066
Комментарии: 0
Введение в анализ алгоритмов

 Читать далее...

27.03.2019г.
Просмотров: 1636
Комментарии: 1
Arduino Uno и Raspberry Pi 3: от схемотехники к интернету вещей

 Читать далее...

Друзья сайта  

Форум системных администраторов  

sysadmins.ru

 Операционная система Embox: решение для встроенных систем

Статьи / Операционная система Embox: решение для встроенных систем

Автор: Антон Бондарев

В последнее время активно развивается тематика встроенных (embedded) систем, и многие крупные компании, такие как Google, Microsoft, Intel, вкладывают огромные ресурсы в исследования и разработки в данной области.

Взять, например, проект Microsoft по созданию специализированной ОС для умных домов homeos или процессоры от Intel для встроенных решений Intel Quark, а о различных исследовательских проектах от Google по робототехнике иговорить не стоит – они и так на слуху.

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

Для подготовки хороших специалистов в этой области на математико-механическом факультете СПбГУ организовали исследовательский проект по созданию ОС реального времени для встроенных применений Embox, в котором активную роль играют студенты.

Embox – открытая операционная система реального времени, поддерживает:

  • шесть процессорных архитектур (x86, ARM, MIPS, Microblaze, SPARC, PPC);
  • сетевой стек;
  • несколько файловых систем (FAT, ext2/3/4, jffs2, nfs);
  • несколько языков программирования (Java, Python, Lua, Lisp, C/C++);
  • и применяется в различного рода встроенных и телекоммуникационных устройствах, например, маршрутизаторах, потоковых шифраторах, контроллерах управления светодиодами.

Кратко опишу проблемы, с которыми приходилось сталкиваться участникам проекта Embox, поскольку проект существует уже пять лет. Их было несколько.

  • Во-первых, требовалось решение для простой отладки аппаратуры. Для этого было сделано минимальное окружение, позволяющее автоматически стартовать набор тестов, разработанных на языке C, а также очень легковесный shell, способный запускаться фактически на голом железе.
  • Во-вторых, исходный код нужно было сертифицировать, а, значит, в дистрибутиве должны быть только те части, которые несут функциональную нагрузку. При этом код в неиспользованных ветках #if – #def конструкций не должен был быть представлен для сертификации. Для решения этого вопроса была разработана система сборки на основе специального языка описания модулей, которая позволяет избежать #if – #def конструкций и гибко задавать список используемых функциональных модулей и их параметров.
  • В-третьих, результаты работы можно было бы использовать в научной и учебной деятельности, а, значит, проект должен быть открытым.

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

Например, для запуска на роботах Lego Minstorm 2, который имеет 64к ОЗУ, пришлось многое умещать в эти скромные килобайты. А для того чтобы не разрабатывать кучу драйверов для всевозможных контроллеров, был придуман механизм использования BSP от производителей аппаратуры.

Кроме того, по мере роста проекта возникла проблема запуска открытого ПО на платформе Embox. И такой механизм с учетом особенностей встроенных систем был придуман и реализован в проекте.

Поскольку с ростом проекта поддержка корректной работоспособности функциональных модулей на всех возможных архитектурах и в различных конфигурациях становилась невыносимой, в проекте было внедрено автоматическое тестирование.

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

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

Яндекс.Метрика
Tel.: (499) 277-12-41
Fax: (499) 277-12-45
E-mail: sa@samag.ru