SWD Software Ltd. - официальный дистрибьютор QNX на территории России и стран бывшего СССР Операционная система реального времени QNX
Инструменты для создания надёжных встраиваемых систем и
интеллектуальных устройств любой сложности
QNX Software Systems - разработчик встраиваемой операционной системы QNX
Информационные брошюры
Статьи и публикации
Обзоры
Операционные системы
Графические интерфейсы
Средства разработки
Прикладные системы на базе ОС QNX
Разное
Конкурсные статьи
Техническая литература
Материалы конференций QNX-Россия
Полезные ссылки
Блог QNX
Главная страница > Материалы > Статьи и публикации > Разное > Технология Persistence Publish/Subscribe для интеграции ПО Сделать страницу стартовой Послать ссылку коллеге Версия для печати

Технология Persistence Publish/Subscribe для интеграции ПО

Разработчики приложений для встраиваемых систем делятся на две большие группы, существующие по собственным законам. Первая — разработчики приложений на Flash, Web 2.0, Java и т.д. Нередко они слабо представляют, как создается система реального времени. Вторая — разработчики встраиваемых систем, которые программируют на языках C и C++ и могут не иметь опыта работы с Flash-приложениями. Две эти группы как будто живут в разных мирах, что и вызывает определенные проблемы при реализации совместных проектов.

Снять все сложности, возникающие при интеграции технологий, позволяет Persistence Publish/Subscribe (PPS), новая служба ОСРВ QNX Neutrino. Небольшая и легко масштабируемая, она позволяет выстраивать системы на основе слабых связей и асинхронных коммуникаций.

В общем виде логику работы службы можно описать следующим образом: объект интегрируется в адресное пространство файловой системы PPS. Когда издатель (publisher), зарегистрировавший объект, изменяет его, служба PPS оповещает всех клиентов (subscriber), подписанных на отслеживание изменения этого объекта. PPS-клиент может подписаться на множество объектов, а PPS-объект может иметь как множество издателей (publisher), так и множество подписчиков (subscriber).

Рассмотрим работу службы Persistence Publish/Subscribe на практическом примере автомобильной информационно-развлекательной системы. Предположим, она состоит из системы управления двигателем, интерфейса человек-машина и приборной панели. Система управления двигателем собирает данные спидометра, тахометра, температурных датчиков и передает их через человеко-машинный интерфейс на приборную панель. В стандартной системе, где объекты объединены жесткими детерминированными связями, изменения на аппаратном уровне (подключение новых датчиков или устройств) потребуют доработки программного кода, а также компонентов HMI и приборной панели.

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

Такая модель коммуникации идеальна для устройств, объединяющих разрозненные устройства и программные компоненты в рамках сложного человеко-машинного интерфейса. Для систем, оснащенных графическим интерфейсом, необходимо лишь наличие единственной службы PPS, которая наладит взаимодействие всех компонентов системы. Более того, использование асинхронной модели коммуникаций упрощает задачу внесения в систему изменений, модификаций или расширений, что позволяет создать условия для параллельной работы Flash- и С-разработчиков, и соответственно – для оперативного вывода продукта на рынок.

Рассказать друзьям:

Rambler's Top100           Рейтинг@Mail.ru