Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Архив2 / курсовая docx200 / Germanov_Kursovaya_VMSiS.docx
Скачиваний:
84
Добавлен:
07.08.2013
Размер:
204.24 Кб
Скачать

11.6 Bada.

bada (кор.  — море) — платформа для мобильных телефонов с сенсорными экранами («тачфонов»), а также умных телевизоров. Разрабатывается компанией Samsung Electronics на основе опыта разработки и развития проприетарной платформы SHP (Samsung Handset Platform). Телефоны на платформе bada получили название «бадафоны» (bada phones) и позиционируются производителем как смартфоны.

bada является платформой закрытого типа, для которой:

  • могут быть разработаны родные (нативные, от англ.native — родной, свойственный) приложения, то есть приложения, разрабатываемые непосредственно под платформу, с использованием SDKот производителя;

  • может быть использовано неограниченное количество вариантов аппаратных решений, и, как следствие, ОС (Linux,RTOS,Windows Mobile).

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

Над уровнем ядра операционной системы (англ.kernel) располагается слой устройства (англ.device). Службы, работающие на этом уровне, базируются на возможностях уровня ядра и обеспечивают вышележащие слои доступом к таким функциям устройства, как работа с графикой, мультимедии и коммуникациям. Именно благодаря этому уровню программы, написанные для Bada, получают 3D-графику и возможность выхода в Сеть с помощью всех известных коммуникационных интерфейсов. Кстати, обеспечением поддержки социальных сервисов вплотную занимается вышележащий уровень Service.

Программы в среде bada выполняются без использования промежуточного программного обеспечения типа Java-машины. Bada обеспечивает поддержку многозадачности и доступ программ ко всем функциям платформы.

На сегодняшний день платформа bada занимает 4-е место среди всех операционных систем.

11.7 MeeGo

MeeGo — проект с открытым исходным кодомна основеLinux(RPM-based). Платформа предназначена для работы на широком спектре устройств, включаясмартфоны,планшеты,нетбуки, настольные компьютеры, телевизионные приёмники и информационно-развлекательные системы. Для каждой категории устройств разрабатывается отдельная сборка и подготавливается загрузочныйISO-образ. В основе любой из них лежит базовая составляющая — MeeGo Core Software Platform, определяющая основную функциональность системы.Пользовательский интерфейсразличен для каждой сборки соответствующей категории устройств, исходя из различных принципов, особенностей и условий их работы. Центральной идеей является обеспечение максимально легкойпереносимости приложениймежду различными вариантами сборок. Перенос приложения на другие устройства, работающие под управлением MeeGo, не будет представлять собой разработку нового приложения, а будет лишь доработкой или расширением уже существующего приложения.

В MeeGo используются наработки проектов Maemo(отNokia),Moblin(отIntel), а также таких Linux-проектов какFedora,Debian,OpenSUSE. Многие частные компании принимают участие в разработке и адаптации MeeGo: Intel (на сегодня основной участник проекта), Nokia, AMD, Novell, ASUS, Acer, MSI и другие.

Архитектура.

Архитектура системы MeeGo изначально проектировалась как решение, предназначенное для работы на широком спектре устройств. Один из способов рассмотрения архитектуры предполагает разделение системы на три уровня (слоя) :

Уровень пользователя

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

  • Netbook UX — для нетбуков.

  • Handset UX — для телефонов и смартфонов.

  • In-Vehicle Infotainment (IVI) UX — для информационно-развлекательных систем.

  • Tablet UX — для планшетов (альфа-версия).

Этот уровень также предоставляет набор программных компонентов (Application Framework) для каждого из поддерживаемых профилей устройств.

Уровень приложений и интерфейс программирования приложений

Содержит MeeGo API основанный на Qt и Qt Mobility, обеспечивает интерфейс для разработки приложений. Текущий релиз включает Qt4.7.3, Qt mobility 1.2,OpenGL ES1.1 иOpenGL ES2.0. Дополнительные функции находятся в стадии разработки.

Базовая система

Включает в себя ядро Linux, программную прослойку (middleware) необходимую для определения оборудования, обеспечивающую связь ядра и прикладного программного обеспечения, а также ПО для обеспечения адаптации оборудования (Hardware Adaptation Software).

Программную прослойку (middleware) можно рассматривать как совокупность доменов предоставляющих соответствующие службы (middleware/OS service domains), исходя из выполняемых функций:

  • Обеспечение безопасности (Security).

  • Управление данными (Data Management).

  • Управление программным обеспечением (Software Management).

  • Управление устройствами, распределение ресурсов, контроль состояния системы (System).

  • Локализация (Location Framework).

  • Графическая подсистема (Graphics).

  • Основные системные библиотеки (Essentials).

  • Поддержка мультимедиа и соответствующих драйверов (Multimedia).

  • Управление персональной информацией, резервное копирование, синхронизация, учетные записи и т. д. (Personal Information Management).

  • Интернет, телефония, средства мгновенного обмена сообщениями, сотовая связь (Communication).

  • Поддержка Qt, QtWRT, Qt Mobility (Qt).

  • Ядро Linux и драйверы ядра (Kernel).

Основные характеристики.

В базовой сборке MeeGo 1.2 Core Software Platform, определяющей основную функциональность системы, задействованы следующие компоненты:

  • Linux-ядро 2.6.37 c дополнительными оптимизациями, направленными на понижение энергопотребления, поддержку процессоров Intel AtomZ6xx и платформы Nokia N900.

  • Инструментарий сборки на базе GCC4.5.1. Сборка осуществляется с расширенной поддержкой оптимизации для микроархитектуры Intel Atom и задействованием инструкций IntelSSSE3. В комплект включены выпущенные в рамках релизаLinaro2010.09 патчи по оптимизации для основанных на ARMV7-A чипсетов, включая Tegra2 и Marvell Thumb2/Neon.

  • Файловая система по умолчанию — btrfs. Присутствует поддержкаext2,ext3,ext4,FAT, VFAT, FAT32, возможна поддержкаNTFSчерезFUSEпосле установки драйвера NTFS-3G.

  • Содержит X.Org Server1.9.0,Mesa7.9.1, современный графический 2D/3D стек, поддерживающий переключение видеорежимов на уровне ядра (KMS) и не требующий для работы X-сервера привилегий суперпользователя.

  • Организация взаимодействия с оборудованием через DeviceKit и udev.

  • Qt4.7.2 и Qt-mobility 1.2. Поддерживается GLee (GL Easy Extension library), дополнительно реализована поддержкамультитаччерез XInput2 API. В Qt-mobility дополнительно добавлены расширенные функции для работы с фотокамерами, поддержка libva и возможность работы сшейдерамичерез OpenGL ES 2.

  • Для обеспечения совместимости приложений в платформу включены библиотеки GTKиClutter.

  • Для обеспечения функций голосовой связи и передачи данных задействованы телефонный стек oFono и система конфигурирования ConnMan.

  • В ConnMan из новых возможностей можно отметить: поддержка OpenVPN, автоконфигурирование прокси, возможность организации работы других машин через текущую систему, поддержка IPv6 DNS.

  • Поддержка Universal Plug and Play(UPnP).

  • Звуковой сервер PulseAudio0.9.22 c поддержкой политик управления ресурсами, обеспечением телефонных вызовов и управления звуком. Дополнительно добавлена поддержкаbluetooth-профиля A2DP для прямого потокового проигрывания MP3.

  • Прослойка для управления пакетами программ PackageKit 0.6.13. Расширены возможности по работе через прокси, добавлена возможность отмены выполнения операций в процессе загрузки/установки пакетов, добавлена возможность прямой установки уже загруженных RPM-пакетов. Для управления пакетами используется пакетный менеджер Zypper/libzypp.

Соседние файлы в папке курсовая docx200