+38/044/257-2444
+38/067/502-3306
+38/050/370-3627
Новости

Представлен выпуск открытой платформы webOS Open Source Edition 2.10

Представлен выпуск открытой платформы webOS Open Source Edition 2.10

Представлен выпуск открытой платформы webOS Open Source Edition 2.10, которая может применяться на различных портативных устройствах, платах и автомобильных информационно-развлекательных системах. В качестве эталонной аппаратной платформы рассматриваются платы Raspberry Pi 4. Платформа развивается в публичном репозитории под лицензией Apache 2.0, а разработку курирует сообщество, придерживаясь совместной модели управления разработкой.

Платформа webOS была изначально разработана компанией Palm в 2008 году и использовалась на смартфонах Palm Pre и Pixie. В результате поглощения компании Palm в 2010 году платформа перешла в руки Hewlett-Packard, после чего HP пыталась использовать данную платформу в своих принтерах, планшетах, ноутбуках и ПК. В 2012 году компания HP анонсировала перевод webOS в независимый открытый проект и в 2013 году начала открытие исходных текстов его компонентов. В 2013 году платформа была выкуплена компанией LG у Hewlett-Packard и теперь применяется на более чем 70 миллионах телевизоров и потребительских устройств LG. В 2018 году был основан проект webOS Open Source Edition, через который компания LG попыталась вернуться к открытой модели разработки, привлечь других участников и расширить спектр поддерживаемых в webOS устройств.

Системное окружение webOS формируется с использованием инструментария и базовых пакетов OpenEmbedded, а также сборочной системы и набора метаданных от проекта Yocto. Ключевыми компонентами webOS являются менеджер системы и приложений (SAM, System and Application Manager), отвечающий за выполнение приложений и сервисов, и Luna Surface Manager (LSM), формирующий интерфейс пользователя. Компоненты написаны с использованием фреймворка Qt и браузерного движка Chromium.

Отрисовка осуществляется через композитный менеджер, применяющий протокол Wayland. Для разработки пользовательских приложений предлагается использовать web-технологии (CSS, HTML5 и JavaScript) и фреймворк Enact, основанный на React, но возможно и создание программ на С и C++ с интерфейсом на базе Qt. Пользовательская оболочка и встроенные графические приложения в основном реализованы как нативные программы, написанные с использованием технологии QML. По умолчанию предлагается оболочка Home Launcher, оптимизированная для управления с сенсорных экранов и предлагающая концепцию сменяющих друг друга карт (вместо окон).

Для хранения данных в структурированном виде с использованием формата JSON применяется хранилище DB8, использующее в качестве бэкенда БД LevelDB. Для инициализации используется bootd на основе systemd. Для обработки мультимедийного контента предлагаются подсистемы uMediaServer и Media Display Controller (MDC), в качестве звукового сервера применяется PulseAudio. Для автоматического обновления прошивки применяется OSTree и атомарная замена разделов (создаются два системных раздела, один из которых является активным, а второй используется для копирования обновления).

Основные изменения в новом выпуске:

  • Реализован фреймворк Storage Access, предоставляющий единый интерфейс для доступа к различным хранилищам, включая внутреннее хранилище, USB-накопители и облачные системы хранения (пока поддерживается только Google Drive). Фреймворк позволяет через общий пользовательский интерфейс просматривать и открывать документы, изображения и файлы из всех настроенных провайдеров хранения данных.
  • В браузерном движке обеспечено хранение сессионных и аутентификационных Cookie в зашифрованном виде.
  • Добавлен новый сервис Peripheral Manager для управления периферийными устройствами, поддерживающий взаимодействие с устройствами через интерфейсы GPIO, SPI, I2C и UART. Сервис позволяет организовать управления новыми устройствами без изменения исходных текстов платформы.
  • Расширены возможности модели управления доступом ACG (Access Control Groups), применяемой для ограничения полномочий сервисов, использующих Luna Bus. В новом выпуске на ACG переведены все старые сервисы, в которых ранее использовалась старая модель безопасности. Изменён синтаксис правил ACG.

Другие новости