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

Российский телекоммуникационный сектор имеет ряд отличительных особенностей, которые не характерны для других секторов экономики.

Во-первых, он переживает этап бурного роста и быстрой смены технологий, что заставляет производителей сетевого и телекоммуникационного оборудования постоянно отслеживать рыночные тенденции и учитывать их в сжатые сроки в качественных и востребованных продуктах. Жизненный цикл изделий становится значительно короче.

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

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

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

ОС для телекома

По данным журнала Embedded System Design, 71% встраиваемых решений работают под управлением операционных систем (рис. 1), из которых более половины — 51% (или 36,3% от общего числа систем) используют коммерческие ОС. В следующей по численности группе используются ОС собственной разработки — 21 или 15,1% от всех систем. Примерно поровну распределились решения на базе условно «бесплатных» ОС с открытым кодом и на коммерчески распространяемых системах с открытым кодом — 16 и 11,8% (11,5 и 8,4% общего числа систем) соответственно. Исследователи (Jim Turley. Embedded System survey: Operating systems up for grabs, www.embedded.com) отмечают тенденцию к увеличению доли использования коммерческих операционных систем, уменьшению доли Linux, а также отказ от систем собственной разработки.

Рис. 1. Операционные системы для встраиваемых применений

Вообще без операционной системы. Вариант унаследован из времен использования 8-разрядных однокристальных схем, примитивных устройств и низкоуровневых языков программирования. Данный подход стремительно отмирает — процессоры быстро дешевеют и в то же время становятся все более мощными и интегрируют в себе большое количество периферийных устройств и подсистем. Без операционной системы «на борту» просто невозможно полностью использовать их потенциал, не говоря уже о недостаточной скорости разработки на низкоуровневом языке программирования системных компонентов, прикладной логики, стеков протоколов и сервисов.

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

ОС с открытым кодом. Следует разделить понятия Open Source и условно бесплатное программное обеспечение, распространяемое под лицензиями GPL и др. Среди решений Open Source существует много коммерческих вариантов, а если говорить об условно бесплатных ОС, то лидером среди них в телекоммуникационной среде, безусловно, является Linux. В упомянутом исследовании респондентам были предложены два вопроса: «Причины, по которым следует использовать Linux» (рис. 2) и, наоборот, «Причины, по которым не следует использовать Linux» (рис. 3). Результаты исследования показывают, что первые четыре довода «за» не носят технический характер, а две технические причины «за» (производительность и использование памяти) присутствуют также и в списке «против». Компании, выбирающие Linux в качестве платформы для своих разработок, за счет открытого исходного кода стремятся получить больший контроль над своими разработками и большую адаптируемость операционной системы к своим задачам. При этом среди частых доводов «за» респонденты указали «уход от коммерческих альтернатив», что не означает признание преимуществ Linux, а свидетельствует лишь о нежелании использовать конкретную коммерческую ОС. Неоднозначен также вопрос стоимости — отсутствие лицензионных отчислений может с лихвой перекрыться возможными потерями времени и большими скрытыми расходами на самостоятельное сопровождение решений.

Рис. 2. Причины, по которым следует использовать Linux

Рис 3. Причины, по которым не следует использовать Linux

Коммерческие ОС. Коммерческие системы и их производители традиционно предлагают качественное управление процессом разработки и выпуска продуктов, возможность непосредственного влияния на производителя, защищенность с точки зрения патентных прав и прав интеллектуальной собственности, профессиональные сервисы, сопровождение и поддержку, официально опубликованные планы по разработке и обновлению, инвестиции производителей в перспективные технологии и инновации. Среди коммерческих встраиваемых ОС, представленных на российском рынке, наибольшее распространение получили LynxOS, QNX, VxWorks, WinCE, XP Embedded. Коммерческие поставщики в большинстве случаев не открывают исходные коды своих продуктов, что выявляет ряд недостатков таких систем: ограниченные возможности контроля продукта и его адаптации под задачи пользователей, препятствия коммерческой модели развитию сообщества разработчиков вокруг операционной системы.

Для объединения преимуществ коммерческой ОС и ОС с открытым кодом некоторые поставщики предлагают коммерческую модель на основе Open Source — коммерческую операционную систему с открытыми исходными кодами. Примером может служить гибридная модель компании QNX Software Systems, которая открыла доступ к исходным кодам ОС QNX.

Теория выбора

С технико-экономической точки зрения, учитывая особенности телекоммуникационной отрасли, операционная система должна удовлетворять ряду требований.

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

Чтобы посчитать, какой вариант более выгоден с экономической точки зрения, принято оценивать сборный высокоуровневый показатель TCO (Total Cost of Ownership — «суммарная стоимость владения»). TCO включает в себя затраты на обучение обслуживающего персонала и пользователей системы, затраты, связанные со сбоями и простоями — запланированными или незапланированными, инциденты снижения производительности, издержки в результате нарушения безопасности (потеря репутации и затраты на восстановление), занимаемое пространство на месте эксплуатации, потребление электроэнергии, затраты на разработку и тестирование, контроль качества и многое другое.

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

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

Также важно обратить внимание на ряд возможных услуг, которые способствуют минимизации TCO.

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

Практика выбора

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

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

Александр Трофимов (a.trofimov@swd.ru) — менеджер по продажам отраслевых решений компании SWD Software (Санкт-Петербург).