|
|
В QNX Neutrino ядро отвечает только за базовые примитивы ОС (сигналы, таймеры, планирование, и т.п.). Все остальные компоненты системы: драйверы, файловые системы, стеки протоколов, пользовательские приложения - выполняются вне пределов ядра как отдельные процессы, каждый в своем защищенном адресном пространстве. Такая схема изначально обладает исключительной, "встроенной", отказоустойчивостью.
Однако, и это еще не все. Все компоненты QNX Neutrino используют для общения друг с другом единый, четко детерминированный механизм - обмен сообщениями. Он образует между компонентами системы виртуальную "программную шину", позволяющую подключать к ней или, наоборот, отключать любой компонент "на лету". Мало того, сообщения могут свободно передаваться между узлами вычислительной сети, предоставляя прозрачный доступ к любому ресурсу, где бы он ни находился.
С QNX Neutrino вы можете:
Создавать системы, способные к самовосстановлению - в QNX Neutrino любой компонент в случае отказа может быть перезапущен динамически, не нарушая работу микроядра и других компонентов. Например, если драйвер попытается обратиться к памяти за пределами своего адресного пространства (что для большинства ОС является фатальной ошибкой), QNX Neutrino корректно завершит этот драйвер и освободит все занятые им ресурсы. Вы сможете даже автоматически перезапустить этот драйвер, используя администратор систем высокой готовности QNX Neutrino.
Использовать одну и ту же ОС во всей своей линейке продуктов - благодаря исключительной модульности QNX Neutrino, любые уже испытанные и проверенные компоненты - драйверы, приложения, дополнительные сервисы ОС - вы можете использовать повторно в других своих продуктах. Фактически, вы можете создать универсальный набор бинарных модулей, а затем применять его либо в однопроцессорном устройстве, либо в SMP-системе, либо в вычислительном кластере. Вне зависимости от масштаба и сложности вашей системы, вы будете использовать одну и ту же ОС, один и тот же интерфейс прикладного программирования (API) и один и тот же инструментарий разработчика.
Производить апгрейды "на лету" - поскольку любой компонент в QNX Neutrino может быть добавлен или удален динамически, ваша система может продолжать работать даже в процессе замены или добавления в нее новых приложений, драйверов или стеков протоколов.
|
|