Надёжность ОС и поддержка аппаратных платформ
Усложнение встраиваемого ПО приводит к быстрому увеличению объёма его кода: согласно данным консалтинговой фирмы Willert Software Tools GmbH, объём кода типового встраиваемого приложения каждые 5 лет возрастает на порядок. Исследование компании Coverity показывает, что среднее количество ошибок в 1 млн. строк программного кода равно 434, а в широкораспространённых продуктах (которые, как правило, хорошо отлажены и протестированы) составляет 290. Объём исходного кода ядра ОСРВ QNX Neutrino равен 0,1 млн. строк, в то время как у некоторых распространённых в промышленности ОС этот показатель составляет 3-7 млн., а у ОС общего назначения – до нескольких десятков млн. Такая разница объясняется тем, что во всех версиях ОСРВ QNX Neutrino микроядро несёт лишь базовые системные функции, а в других ОС круг задач ядра гораздо шире. Развитие этих ОС приводит к постоянному расширению их ядер, а в ОСРВ QNX растёт лишь количество внешних программ и библиотек, которые могут быть включены или исключены из целевой системы по усмотрению разработчика. Таким образом, микроядерная архитектура является всё более и более важным преимуществом ОСРВ QNX с точки зрения надёжности системных сервисов. Для обеспечения отказоустойчивости на уровне «пользовательских» процессов и системы в целом в ОСРВ QNX имеется целых ряд технологий – комплект высокой готовности (High Availability Toolkit), адаптивное квотирование ресурсов (Adaptive Partitioning), мгновенная активация устройств (Instant Device Activation) и др. Кроме того, технология прозрачных распределённых вычислений (Transparent Distributed Processing ,TDP) позволяет строить многомодульные системы, где основные и резервные сервисы расположены на разных узлах.

Эффективная поддержка современных промышленных аппаратных платформ – важная задача любой современной ОСРВ. В поставку QNX SDP входят версии микроядра для процессоров семейств x86, MIPS, ARM, PowerPC и SH-4, а штатный компилятор обеспечивает генерацию двоичных файлов для этих архитектур. Одно из усовершенствований платформы разработки ПО QNX SDP 6.5 связано с поддержкой процессоров ARM. В предыдущих версиях QNX SDP компилятор создаёт единый набор двоичных файлов для архитектур ARMv5, ARMv6 и ARMv7, что обеспечивает лёгкую переносимость ПО между процессорами, однако не позволяет использовать все преимущества новейших процессоров с более совершенными системами команд, таких как Cortex A8/A9. Компилятор GCC 4.4, входящий в состав QNX SDP 6.5, поддерживает новый тип целевых систем – ARMv7. При компиляции программ для ARMv7 используется новый двоичный интерфейс процессоров ARM для встраиваемых приложений (англ. Embedded Application Binary Interface, EABI).
Процессоры с архитектурой Cortex A9 имеют многоядерные версии, а ОСРВ QNX обеспечивает на них симметричную мультиобработку ПО (Symmetrical Multiprocessing, SMP) с поддержкой до 32 ядер. Рост процессорной мощности позволяет повысить конкурентоспособность встраиваемых систем за счёт расширения их функциональности, а также сократить стоимость разработки и сопровождения систем, которые при одноядерных процессорах состояли бы из нескольких вычислительных узлов.
