СТА 4/2010

20 СТА 4/2010 ОБЗОР /ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ www.cta.ru В СТУПЛЕНИЕ Исходя из статистики клиентских запросов и обзоров аналитических компаний типа Gartner, число новых проектов ПО для встраиваемых сис тем, для которых в качестве ОС была выбрана Linux, растёт. Среди самых очевидных преимуществ Linux – до ступность исходного текста из тысяч онлайн источников, отсутствие ли цензионных отчислений, большое ко личество системного, связующего и прикладного ПО, а также вся мощь и гибкость, которые может дать встраи ваемому ПО многозадачная ОС. Ядро Linux и окружающее его открытое ПО являются центром новой экосистемы разработки, оптимизации и развёрты вания встраиваемых приложений. Однако, к сожалению, мощь, гиб кость и лёгкая доступность ещё не означают, что создание и поддержка Linux платформы для встраиваемого устройства вручную является триви альной задачей. Всё большее количест во разработчиков в последнее время стали осознавать, что использование «доморощенной» Linux несёт в себе риск невольно свернуть их с пути к ре альной цели – обеспечению конку рентных преимуществ разрабатывае мому устройству. В данной статье опи сываются базовые компоненты Linux платформы, инструменты и последова тельность шагов по созданию, развёр тыванию и тестированию этих компо нентов, а также основные ключевые моменты поддержки любых «доморо щенных» программных решений для встраиваемых систем. К ОМПОНЕНТЫ L INUX ПЛАТФОРМЫ Термином «Linux платформа» (или «дистрибутив Linux») обычно называют базовый комплект ПО, необходимый для построения ядра Linux и системных и прикладных программ для заданного устройства. Эти базовые компоненты всегда одинаковы, вне зависимости от того, является ли целевое устройство настольным или встраиваемым компь ютером. Любая Linux платформа всег да состоит из трёх базовых элементов: ● ядра Linux, то есть версии ядра Linux, скомпилированной для данного про цессора (оно предоставляет под держку интегрированных аппарат ных модулей, шин, необходимых протоколов связи и обмена данны ми, а также наиболее часто встреча ющихся периферийных устройств); ● корневой файловой системы, то есть набора системных и прикладных программных пакетов, используе мых для создания корневой файло вой системы (корневая файловая система поддерживает основные системные сервисы, и с неё загружа ются прикладные программы); ● инструментария разработки, то есть компилятора и сопутствующих ути лит, позволяющих разработчику соз давать ПО, исполняемое на целевой аппаратуре. Поддержка своей собственной Linux платформы означает, что все эти три компонента вам нужно будет запо лучить, скомпилировать и поддержи вать самостоятельно. Далее в статье мы увидим, что построение этих ключевых компонентов на одном настольном компьютере – процесс хоть и непро стой, но управляемый. Однако когда в процесс разработки встраиваемого ПО вовлечено более одного разработчика и более одной рабочей станции, а также когда к разработке добавляются раз вёртывание, поддержка и регулярное обновление платформы на всём пред приятии (или даже просто в пределах одного подразделения), возникает не обходимость в дополнительной инфра структуре. П ОЛУЧЕНИЕ , МОДИФИКАЦИЯ И КОНФИГУРИРОВАНИЕ ЯДРА L INUX Попытка начать проект разработки ПО с получения исходных текстов яд ра, которое вы намерены использовать на целевом устройстве, может пока заться странной – в конце концов, у вас ещё даже нет инструментария, что бы этот код скомпилировать. Однако если вы хотите собрать свой собствен ный инструментарий, то для сборки всех его компонентов необходимо, О реальной стоимости «доморощенной» Linux Свен Даммер В статье детально описывается процесс построения специализированного дистрибутива встраиваемой Linux в кросс платформенной среде. Раскрываются неочевидные источники опасностей и скрытых затрат при использовании «ручного» подхода к построению собственной Linux платформы, приводится сравнение «ручного» и коммерческого подходов на примере платформы Wind River Linux. © СТА-ПРЕСС

RkJQdWJsaXNoZXIy MTQ4NjUy