«Открытые системы»

Создатель QNX о новейших технологиях своей операционной системы

Очередная, девятая, конференция «QNX-Россия» в этом году впервые прошла в Москве. Компания SWD Software из Санкт-Петербурга, дистрибьютор канадской QNX Software Systems, в год своего пятнадцатилетия перенесла мероприятие в столицу. О повышении статуса конференции свидетельствовало и присутствие на ней учредителя и генерального директора QNX Software Systems Дэна Доджа.

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

Она поддерживает различные варианты многоядерной архитектуры. Симметричная многопроцессорность, при которой несколько ядер находятся под управлением одной операционной системы, реализует разделение ресурсов на уровне операционной системы и рекомендуется для «многоядерных» приложений. В другом варианте, асимметричной многопроцессорности, для каждого ядра исполняется свой экземпляр операционной системы, что обеспечивает поддержку существующих неоптимизированных однопроцессорных приложений. Додж предложил объединить преимущества разных вариантов многоядерности в так называемой исключительной многопроцессорности. Этот вариант работы операционной системы реального времени позволяет на одной многоядерной платформе использовать существующие программы вместе с приложениями, оптимизированными для многоядерной архитектуры. Новая редакция пакета разработчика QNX Momentics Multi-Core Edition предоставляет инструментарий для создания и переноса приложений в любую из трех моделей многопроцессорности.

Еще одно новшество QNX, на котором подробно остановился Додж, — технология адаптивной декомпозиции (Adaptive Partioning), призванная повысить надежность встраиваемых систем. Она является расширением микроядра QNX Neutrino и позволяет создавать группы из нескольких приложений, которым обязательно будет выделяться процессорное время. За это отвечает специальный планировщик, технологию которого компания готовится в ближайшее время запатентовать. В зависимости от «бюджетов» приложений созданным безопасным группам даже при максимальной загрузке процессоров гарантируется определенный процент процессорных циклов, причем ресурсы могут динамически перераспределяться между группами с разными требованиями к загрузке процессора.

По приведенным на конференции данным, рынок операционных систем реального времени растет в среднем на 19% ежегодно. QNX, занимающая на нем пятое место, является, по утверждению Доджа, лидером в области встраиваемых приложений для автомобильной индустрии. Самым большим рынком для нее остается промышленная автоматизация, а самой обнадеживающей по темпам роста, наряду с автомобильной отраслью — сфера телекоммуникаций.


Лучшее от трех моделей

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