Сравнение встроенных операционных систем?

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

Основными ограничениями системы являются:

  • Ему нужен веб-интерфейс.
  • Входные данные должны обрабатываться в реальном времени (поэтому необходима настоящая ОСРВ).
  • Доступная память составляет 32 МБ RAM и FLASH.

Операционные системы, которые команда использовала ранее, - это VxWorks, ThreadX, uCos, pSOS и Windows CE.

Есть ли у кого-нибудь сравнение или коммерческое исследование относительно выбора операционной системы?

Есть ли другие операционные системы, которые нам следует рассмотреть? (Нам предлагали eCos и RT-Linux).

Изменить - Спасибо за все ответы на сегодняшний день. Жаль, что я не могу пометить все как принятые.


person Peter K.    schedule 22.09.2008    source источник


Ответы (11)


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

У меня большой опыт работы с vxWorks, и мне это нравится, но я не принимаю во внимание мое мнение, поскольку я работаю в WindRiver.

uC / OS II имеет то преимущество, что она полностью задокументирована (как фактически объясняется в исходном коде) в Книге Лабросса. Однако не знаю о веб-поддержке.

Я знаю, что pSos больше не доступен.

Вы также можете ознакомиться с этим списком ОСРВ

person Benoit    schedule 22.09.2008
comment
При выборе ОС опыт команды является приоритетным критерием. Я в первую очередь ловлю рыбу, чтобы увидеть, есть ли новый поворот в том, с чем у команды уже есть опыт. Мы всего лишь небольшая команда и не можем охватить все базы. - person Peter K.; 22.09.2008
comment
Сам Лабросс отвечал на вопросы по электронной почте о uC / OS и сопутствующих продуктах для моей компании, и его люди были дружелюбны к работе. Я использовал uC / OS в нескольких консалтинговых проектах на протяжении многих лет и не стал бы продолжать это делать, если бы это было не так надежно. - person RBerteig; 21.04.2009
comment
Ссылка на удаленный вопрос SO обновлена ​​до Википедии. - person Peter K.; 22.01.2014

Я работал с QNX много лет назад и могу сказать только много хорошего. Уже тогда QNX 4 (который по сравнению с микроядром Neutrino явно громоздкий) идеально подходил для ситуаций с нехваткой памяти (хотя 32 МБ - это куча по сравнению с 1-2 МБ, с которыми нам приходилось играть), и хотя я явно не играл с какими-либо веб-материалами, я знаю, что Apache доступен.

person moobaa    schedule 22.09.2008
comment
Хороший момент: я забыл, что кто-то из членов команды упомянул QNX. Спасибо за рекомендацию. - person Peter K.; 22.09.2008
comment
QNX Neutrino все еще продается? - person Warren P; 19.07.2010
comment
QNX® Neutrino® RTOS 6.5 была выпущена в июле 2010 года - qnx.com /products/neutrino-rtos/neutrino-rtos.html QNX Neutrino x86 Runtime Kit - Свяжитесь с отделом продаж QNX для получения информации о вариантах лицензирования - qnx.com/company/howtobuy.html - person moobaa; 20.07.2010

Думаю, было бы разумно внимательно оценить, что вы подразумеваете под «ОСРВ». Я много лет проработал в крупной компании, которая создает высокопроизводительные встраиваемые системы, и они называют их «работающими в реальном времени», хотя на самом деле это не так. У них низкая задержка и детерминированные планировщики, и в 9 случаях из 10 это именно то, что действительно нужно людям, когда они говорят об RTOS.

Истинный режим реального времени требует аппаратной поддержки и, вероятно, не то, что вы на самом деле имеете в виду. Если все, что вам нужно, - это низкая задержка и детерминированное планирование (опять же, я думаю, это то, что люди имеют в виду в 90% случаев, когда говорят «в реальном времени»), то любой дистрибутив Linux подойдет вам. Вы, вероятно, могли бы даже обойтись Windows (хотя я не уверен, как вы управляете планировщиком Windows ...).

Опять же, просто будьте осторожны с тем, что вы подразумеваете под «В реальном времени».

person Ben Collins    schedule 31.10.2008
comment
Хорошие моменты! Моя система работает в мягком режиме реального времени, а не в жестком режиме реального времени. - person Peter K.; 06.12.2008

Я приобрел некоторое оборудование для разработки в netburner. С ним было очень легко работать, и оно очень хорошо задокументировано. Это ОСРВ, работающая под управлением uCLinux. С компанией приятно работать.

person mcotton    schedule 23.09.2008
comment
NetBurner запускает настроенную версию uC / OS, где-то между uC / OS-I и uC / OS-II. NetBurner - отличная платформа, и многие платы, такие как 5272, имеют достаточно ОЗУ, чтобы вы могли использовать ВСЕ библиотеки C ++, потоки, STL, шаблоны и т. Д. - person Tod; 01.04.2011

Выбор ОС, с которой ваша команда имеет опыт, может быть мудрым решением. Однако я хотел бы предложить два хороших варианта с открытым исходным кодом:

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

Также лицензия для eCos и RTEMS - GPL, но с исключением, так что исполняемый файл, созданный путем компоновки с ядром, не покрывается GPL.

Сообщества очень активны, есть компании, которые обеспечивают коммерческую поддержку и развитие.

person kris    schedule 30.09.2008
comment
Спасибо! И POSIX, и вопрос лицензирования имеют значение для нашего решения (хотя я не упомянул их в исходном вопросе). - person Peter K.; 01.10.2008

Мы очень довольны системой Keil RTX ... легкой и быстрой, которая отвечает всем нашим жестким ограничениям в реальном времени. Он также имеет несколько хороших функций отладки, встроенных для отслеживания переполнения стека и т. Д.

person user24900    schedule 03.10.2008
comment
Keil RTX теперь принадлежит ARM Semiconductor, а набор инструментов RTX вместе с их инструментами uVision IDE и JTAG - очень хорошая технология для классических ядер ARM и новых ядер ARM Cortex M3. - person Warren P; 19.07.2010

Я очень доволен Windows CE, хотя она «тяжелее».

person GEOCHET    schedule 22.09.2008
comment
Я полагаю, это зависит от того, с чем вы это сравниваете. :-) Мне нужно еще немного поиграть с конфигурацией CE, прежде чем я смогу позвонить. - person Peter K.; 22.09.2008
comment
@Peter K: Я лично считаю, что «лишний вес» того стоит. Но вы найдете много защитников Linux, которые будут кричать, что Linux можно уменьшить еще больше, что может быть правдой. Я не думаю, что это мнение имеет большое значение в том, что я делаю. - person GEOCHET; 22.09.2008
comment
Back @ U: Еще раз спасибо за комментарии. Конечно, мы все еще думаем о СЕ. - person Peter K.; 26.09.2008

Публикация для согласия с Беном Коллинзом - вам действительно нужно определить, есть ли у вас требование мягкого реального времени (в первую очередь для взаимодействия с человеком) или требование жесткого реального времени (для взаимодействия с устройствами, чувствительными к времени).

person Toybuilder    schedule 31.10.2008

Мягкость также может означать, что вы можете время от времени терпеть икоту.

Какие требования к надежности? Мой опыт работы с более универсальными операционными системами, такими как встроенная Linux, показывает, что они, как правило, испытывают случайные сбои из-за своей умной оптимизации среднего случая, которая пытается избежать голода и тому подобного для отдельных задач.

person jakobengblom2    schedule 12.04.2009

VxWorks хорош:

  1. хорошая документация;
  2. удобный инструмент для разработки;
  3. низкая задержка;
  4. детерминированное планирование.

Однако я сомневаюсь, что WindRiver сконцентрирует свое основное внимание на Linux, а WindRiver Linux ворвется на рынок WindRiver VxWorks. Меньше рынка, меньше требований к инженерам.

person liuzan    schedule 22.04.2012

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

http://www.embedded.com/design/operating-systems/4425751/Comparing-microcontroller-real-time-operating-systems

person user3222672    schedule 22.01.2014