Разделы

Бизнес

Программное обеспечение: попробуй сломай

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

Мы сталкиваемся с проявлениями будущего компьютерных технологий не только и не столько в наших офисных компьютерах. Встраиваемые системы, компьютеры в мобильных телефонах, автомобилях, лифтах, телевизорах, медицинском оборудовании, то есть практически в любых устройствах, которые имеют кнопку включения электропитания, – это современная реальность.

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

Все эти действия должны управляться операционной системой (ОС), обеспечивающей высочайшие показатели надежности и способной работать годами без единой ошибки, сбоя или перезагрузки. А когда дело касается надежности, ни одна операционная система не может превзойти ОСРВ Neutrino, встраиваемую операционную систему реального времени (ОСРВ), разработанную канадской компанией QNX Software Systems.

У одного клиента ОСРВ QNX проработала без перезагрузки более 20-ти лет, из них около 10 лет в режиме непрерывной обработки команд. "Системы QNX всегда стабильны, их никогда не надо перезагружать, они никогда не подводят", - рассказывает Ричард Чилинский, менеджер по разработке инжиниринговой компании Дэлкан, которая использует QNX в компьютерах, установленных на скоростных трассах, мостах и в туннелях для мониторинга и управления движением. "Когда устанавливают наши системы, люди уверены – они действительно будут работать".

Повышенная надежность изначально закладывалась в QNX. "Мы понимали, что если мы собираемся ориентироваться на устройства, которые управляют процессами промышленной автоматизации, транспортными системами, которые использую в медицинских приборах, предотвращение возможности сбоев должно было стать нашей первоочередной задачей", - комментирует Дэн Додж, Генеральный директор и сооснователь QNX Software Systems Inc. "Наше отличие от остальных компаний заключается в том, что мы проектировали операционную систему, которая может сама себя восстанавливать после сбоя. Мы это называем технологией самовосстановления".

Основателям компании QNX удалось добиться своих целей, радикально изменив архитектуру ОС. Сердцем операционной системы стало ядро, программа, которая управляет ресурсами системы, такими как процессор, память и приложения. Большинство операционных систем основано на "монолитном" ядре, в котором содержатся код работы с файловой системой, сетевыми средствами и драйверы различных устройств, взаимодействующие с дисками, экранами и другим оборудованием. Оперативные системы начинают давать сбой, если в ядре возникает ошибка, а в монолитном ядре существует множество источников возникновения ошибок.

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

У микроядра существует целый ряд преимуществ. Ненужные программные компоненты могут быть отключены для сохранения ресурсов памяти. Драйверы, изначально отделенные от ядра, могут быть обновлены "на лету", без необходимости остановки и перезапуска всей системы. Этот момент очень важен для систем промышленной автоматизации, где остановка конвейера или иное нарушение производственного цикла обходится очень дорого. И, наконец, для устойчивости крайне важен фактор целостности системы. "Когда вы работаете с такими системами как Linux или Windows, вы должны понимать, что ядро таких систем всегда меняется. Как только кто-нибудь устанавливает новый драйвер – меняется ядро, а значит такие системы не стабильны", – комментирует Пол Леру, бывший технологический аналитик QNX, а теперь PR-менеджер компании. "Когда Вы используете наше ядро, Вы работаете с тем же кодом, который мы используем и тестируем".

С 1980 по 1990 технологии QNX развивались, постепенно завоевывая репутацию "идеально подходящих для приложений жесткого реального времени". Под "жесткостью" подразумевается, что, несмотря на миллионы сигналов в секунду, которые поступают в операционную систему от устройства, в которое она встроена, пропуск одного сигнала может привести к катастрофическим последствиям. Другими словами, от операционной системы требуется устойчивое предсказуемое функционирование. Миллионы работающих по всему миру копий ОСРВ QNX полностью соответствуют этим требованиям. Они не позволяют сходить с рельсов французским скоростным поездам, "следят" за работой ядерных реакторов, обеспечивают бесперебойное функционирование систем управления воздушными сообщениями, применяются в лазерной хирургии и электронных игровых системах в Лас-Вегасе. ОСРВ QNX управляет роутером Cisco CRS-1, самым мощным интернет-роутером в мире, системой видеонаблюдения на космических кораблях и Международной космической станции, а также самым южным телескопом GMount, расположенном на высоте 500 м. над Южным полюсом.

QNX обладает самой обширной базой пользователей на рынке промышленной автоматизации, которые и образуют основную долю оборота компании. Но быстроразвивающиеся рынки телекоммуникаций и автомобильных систем управления скоро изменят эту ситуацию.

В октябре 2004 компания QNX приняла предложение о покупке части их акций за 138 миллионов долларов от компании Harman International Industries Inc., американского гиганта аудио (Harman Kardon, JBL) и электронных систем. Корпорации Harman был нужен партнер, занимающийся разработками встраиваемых систем для автомобильного рынка, благодаря совместным усилиям компаний QNX уже утвердилась и в качестве бесспорного лидера в области технологий операционных систем для автомобильных телематических и информационно-развлекательных систем. Этому способствовал большой опыт, приобретенный при создании автомобильных систем для более чем 180 моделей автомобилей по всему миру.

Надежность QNX Neutrino, способность к самовосстановлению, выдающаяся производительность в приложениях жесткого реального времени - это результат несгибаемой веры основателей компании в экспериментальную архитектуру операционной системы. Решение, которое они приняли во времена, когда термин "микроядро" был еще не раскрыт, привело к появлению первой в мире коммерческой микроядерной операционной системы. Но почему она остается единственной? "Большие компании, разработчики операционных систем так много вложили в имеющиеся архитектуры, что, несмотря на необходимость начать проектирование с нуля, до настоящего времени ни одна из них не пожелала вложить в это деньги", - отмечает Дэн Додж.

Роберт Херц

На правах рекламы

37-я международная выставка информационных и коммуникационных технологий Связь-2025 37-я международная выставка информационных и коммуникационных технологий Связь-2025

erid: 2W5zFHRYEHv

Рекламодатель: АКЦИОНЕРНОЕ ОБЩЕСТВО «ЭКСПОЦЕНТР»

ИНН/ОГРН: 7718033809/1027700167153