MontaVista Linux

Материал из Национальной библиотеки им. Н. Э. Баумана
Последнее изменение этой страницы: 13:21, 20 мая 2017.
(перенаправлено с «Hard Hat Linux»)
MontaVista Linux
MontaVista-logo.jpg
Разработчики: MontaVista Software
Постоянный выпуск: 6.0 / 14 августа 2009
Состояние разработки: активная
Написана на: C/C++
Операционная система: Linux
Тип ПО: Операционная система
Веб-сайт mvista.com

MontaVista Linux (первые выпуски носили название Hard Hat Linux) — основанная на Linux операционная система ориентированная на встраиваемые системы. Система разрабатывается компанией MontaVista. На сегодняшний день более 50 миллионов устройств работает на MontaVista Linux.[Источник 1]

MontaVista Linux 6

Как заявляет компания MontaVista Software, MontaVista Linux 6 (MVL6) предоставляет уникальный подход к проблемам разработки встроенных Linux. MontaVista Linux 6 тестировалась и официально поддерживает следующие платформы: Ubuntu Desktop 9.04, openSUSE 11.1, RedHat Enterprise Linux 5.3.

Особенности:

  • Версия ядра MontaVista Linux 6 зависит от аппаратной составляющей проекта. 2.6.27+
  • GCC 4.3.3
  • Использование eglibc
  • В шестой версии MontaVista добавилась поддержка следующих архитектур: Versatile ARM1176™ processor (arm_v6), Versatile ARM926™ processor(arm_v5)

Freescale MPC8377, MPC8349, MPC8548, MPC8572, Intel x86 Pentium и Xeon MIPS32® 1004K™, 24K®, 34K®, 74K® на платформе Malta™ Xilinx ML 507 - Virtex 5 EDK [Источник 2]

Ключевыми компонентами MontaVista 6 являются:

  • Software Development Kit
  • Market Specific Distributions (MSD)
  • MontaVista Zone Content Server

Software Development Kit

Комплект средств разработки (SDK), в свою очередь включает в себя следующие пункты:

  • Интеграционную платформу MontaVista
  • Пакет программ для кросс-разработки
  • Интегрированную среду разработки (IDE) MontaVista DevRocket

Каждый из вышеупомянутых элементов предоставляется в качестве исполняемого образа установщика, который может быть загружен из зоны контента MontaVista (MontaVista Zone Content Server).

Интеграционная платформа MontaVista

Интеграционная платформа MontaVista предоставляет утилиты, используемые для управления проектом MontaVista Linux 6. Она предоставляет пользователям следующие возможности:

  • Создание проекта для определенного MSD
  • Загрузка и обновление содержимого программного обеспечения MSD с MontaVista Zone Content Server
  • Конфигурация и сборка проекта

Другие инструменты Интеграционной платформы MontaVista дают возможность управления проектами и упрощают поддержку обновлений. Эти инструменты позволяют управлять несколькими версиями каждой коллекции контента (content collections).

Пакет программ для кросс-разработки

Пакет программ для кросс-разработки предоставляется для каждой поддерживаемой целевой архитектуры. В состав набора входят:

  • Компилятор, ассемблер, компоновщик и связанные с ними средства разработки
  • Критические целевые системные библиотеки
  • Основные средства отладки

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

MontaVista DevRocket

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

  • Интеграция с проектами MVL6
  • Удаленный целевой доступ
  • Отладка и анализ
  • Профилирование и оценка эффективности

Market Specific Distributions

Именно этот пункт является главной особенностью MontaVista Linux 6. Market Specific Distributions (MSD) — это специализированные Linux-дистрибутивы, предоставляющие оптимизированное решение для конкретной аппаратной платформы и целевого рынка. Каждый MSD состоит из ядра Linux и соответствующих драйверов устройств, библиотек и приложений для нужного процессора. С помощью MSD производитель оборудования сможет получить собственную ОС, которая будет ориентироваться на максимально эффективную реализацию определенных возможностей для конкретного применения продукта, используя все аппаратные специфики железа. Элементы, тесно связанные с MSD:

  • Content Collections
  • Pre-built Binaries

Content Collections

Content Collections (коллекция контента) - это группа методов MVIP и вспомогательные файлы. Для ядра и прикладного программного обеспечения предусмотрены отдельные коллекции. Отдельные функции программного обеспечения также предоставляются в отдельных коллекциях. Коллекции распространяются и обновляются независимо.

Коллекции структурированы как архивы, содержащие патчи, которые применяются к базовым архивам релизов проекта с открытым исходным кодом. При желании эти базовые исходные архивы могут быть загружены отдельно с MontaVista Zone Content Server. Затем архив коллекции может быть обновлен для внесения изменений, не требуя изменения в базовом исходном архиве и не требуя его повторной загрузки. Это экономит время и пространство для хранения по сравнению с полной загрузкой полного исходного кода.

Разработчик создает новый проект, основанный на конкретном MSD, используя инструменты контента, предоставляемые MVIP. Эти инструменты обращаются к MontaVista Zone Content Server, чтобы определить правильный набор «коллекций», которые включают код MSD.

Pre-built Binaries

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

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

MontaVista Zone Content Server снабжает готовыми бинарными файлами конфигурацию каждого MSD.

MontaVista Zone Content Server

MontaVista Zone Content Server предоставляет доступ к коллекциям контента для всех MSD. Из MVIP он инициализируется инструментом "mvl-project", который предоставляет возможность:

  • Вывести список доступных MSD
  • Вывести список коллекций, связанных с MSD
  • Перечислить доступные версии каждой коллекции
  • Загрузить выпуски коллекций, базовые исходные архивы и встроенные бинарные файлы
  • Обновить выпуски коллекций, базовые исходные архивы и встроенные бинарные файлы

Когда разработчик вошел в систему, он увидит только те MSD, к которым у него есть доступ. Инструмент "mvl-mirror" в MVIP предоставляет возможность копирования содержимого с MontaVista Zone Content Server на один или несколько локальных серверов. Поддержание локального зеркала всех подходящих источников может принести компании выгоды несколькими способами:

  • Все программное обеспечение управляется локально, и никакие изменения не могут быть внесены без явного локального действия
  • Все программное обеспечение может быть размещено под контролем источника и включено в регулярные резервные копии
  • Отдельным разработчикам не требуется доступ в Интернет для управления проектами или выполнения сборок. Доступ в Интернет необходим только при обновлении зеркала
  • Сборка может выполняться с большей согласованностью и надежностью, когда не зависит от доступа к внешней сети [Источник 3]

MontaVista Linux Professional Edition 5.0

В 2007 году MontaVista Software, выпустила новую версию своего дистрибутива, предназначенного для встраиваемых устройств и систем реального времени.

Особенности MontaVista Linux Professional Edition 5.0:

  • Версия ядра — Linux 2.6.18 [Источник 4]
  • Аппаратная поддержка: (ARM (ARM, Texas Instruments), MIPS (AMD, Broadcom, MTI, NEC, Toshiba), PowerPC (AMCC, Freescale, IBM), XScale (ADI, Intel), X86 (586, Pentium 2, Pentium 3, Pentium 4)
  • Real-time performance
  • Кроме glibc, есть возможность использования uClibc
  • USB On-The-Go
  • GCC 4.2.0
  • OProfile — статистический анализатор кода (профайлер)
  • Trace — LTT
  • Memory debug — MPatrol
  • DevRocket 5.0 — среда разработки, интегрируемая в Eclipse

Распространенность

MontaVista Linux используется в различных устройствах, в таких как:

  • Электронных книгах (Sony LIBRIé EBR-1000, Sony PRS-505, Sony PRS-700, Sony PRS-300, Sony PRS-600, Sony PRS-900)
  • Музыкальных инструментах (синтезаторы Yamaha S90XS и Yamaha MOTIF XS, тональный модуль Yamaha Motif-Rack XS)
  • Мобильных телефонах (Motorola A760, Motorola A768, Motorola A768i, Motorola A780, Motorola A910, Motorola MING, NEC N900iL, Panasonic P901i и многих других)
  • Цифровых телевизорах (Sony Bravia с 2005 года, а также в некоторых моделях Samsung, Panasonic, Sharp и Mitsubishi)
  • Сетевых хранилищах NAS (Seagate Central STCG2000100, Seagate Business Storage STBN8000200, SMC TigerSTore SMCNAS02, SMC TigerSTore SMCNAS04)
  • Ноутбуках (Dell latitude E4200, Dell latitude E4300)
  • ADSL-роутерах (D-Link G604T Network Adaptor, D-Link G624T Router, D-Link G664T, D-Link G684T ADSL2+/WiFi, Linksys WAG200G ADSL2+/WiFi)

И множестве других. [Источник 5]

Источники

  1. List of devices that run MontaVista Linux // Wikipedia: сайт. URL: https://en.wikipedia.org/wiki/List_of_devices_that_run_MontaVista_Linux (дата обращения: 12.05.2017)
  2. MontaVista Delivers Broad Platform Support with MontaVista Linux 6 // mvista.com: сайт. URL: http://www.mvista.com/press_release_detail1.php?fid=news/2009/Broad-Platform-Support-with-MontaVista-Linux-6.html&d=454 (дата обращения: 12.05.2017)
  3. MontaVista Linux 6 Technical Brief // wordpress.com: сайт. URL: https://opendevincode.files.wordpress.com/2013/11/montavista-linux-6-technical-brief.pdf / (дата обращения: 12.05.2017)
  4. API changes in the 2.6 kernel series // LWN: сайт. URL: http://lwn.net/Articles/2.6-kernel-api/ (дата обращения: 12.05.2017)
  5. List of devices that run MontaVista Linux // Wikipedia: сайт. URL: https://en.wikipedia.org/wiki/List_of_devices_that_run_MontaVista_Linux / (дата обращения: 12.05.2017)