Asteroidos Under the Hood Architecture of an Embedded Linux System

Asteroidos Under the Hood Architecture of an Embedded Linux System

AsteroidOS under the hood Architecture of an embedded Linux system Florent Revest April 26, 2017 Overview An operating system And a community AsteroidOS under the hood - Florent Revest General Presentation Embedded Linux System Linux Kernel & Standard Daemons (systemd, udev, bluez, connman...) AsteroidOS under the hood - Florent Revest General Presentation Embedded Linux System Hardware specificities: UI, Bluetooth LE, Sensors, Battery, USB, CPU... AsteroidOS under the hood - Florent Revest Table Of Contents 1. Graphic Stack 2. Bluetooth Stack 3. Other Stacks 4. Build System AsteroidOS under the hood - Florent Revest Graphic Stack QtQuick apps • Declarative QML • Imperative JavaScript • Known by mobile Linux devs • QML-Asteroid provided • Extended with Qt modules AsteroidOS under the hood - Florent Revest Wayland • Apps using Wayland-EGL • Wayland Compositor = Display Server + WM + Desktop • asteroid-launcher compositor • QtWayland Compositor API AsteroidOS under the hood - Florent Revest Qt Platform Abstraction • No FB, KMS, DRM etc... • QPAs plugins since Qt5 • HWComposer from SailfishOS • Uses Android drivers AsteroidOS under the hood - Florent Revest Libhybris • Dirty hack... But works • Bionic linker in a glibc lib • Loads Android HALs for ex. • ! Android blobs and kernel • Used by SailfishOS, LuneOS, Ubuntu Touch & others... AsteroidOS under the hood - Florent Revest Bluetooth Stack Bluetooth Services • Notifications sync. • Music remote control • Weather forecast • Remote screenshots • Time sync. AsteroidOS under the hood - Florent Revest Asteroid-Btsyncd, DBus • DBus Multiplexer • MPRIS, libnotify or DConf • Uses BlueZ’s BLE DBus API AsteroidOS under the hood - Florent Revest BlueZ, Linux BT Subsystem • Services API • Characteristics API • Descriptor API • Advertisement API • Agent API • bluetoothd and Linux’s HCI AsteroidOS under the hood - Florent Revest Synchronization Clients • AsteroidOSSync • AsteroidOSLinux • Others welcome • Implements profiles AsteroidOS under the hood - Florent Revest Other Stacks Sensors • Accel., Gyro., Magneto. etc... • QtSensors API • SensorFW backend • Hybris backends AsteroidOS under the hood - Florent Revest Haptics • NGFD API • QtFeedback API • Ffmemless backend • Hybris backend AsteroidOS under the hood - Florent Revest Audio • Personal assistant ? • QtMultimedia • PulseAudio • Hybris backend AsteroidOS under the hood - Florent Revest Build System OpenEmbedded / Yocto • Yocto by Linux Foundation • OpenEmbedded build system • Images generated from • Packages built from • Recipes gathered in • Layers (BSP or Apps) AsteroidOS under the hood - Florent Revest Apps Layers • meta-asteroid • meta-qt5 • meta-smartphone • meta-openembedded • oe-core/meta AsteroidOS under the hood - Florent Revest BSP Layers • meta-*-hybris BSP • Provides /system and kernel • anthias, bass, dory, sparrow, sprat, sturgeon, swift, tetra, wren... AsteroidOS under the hood - Florent Revest Thanks! Questions? #asteroid asteroidos.org @AsteroidOS AsteroidOS under the hood - Florent Revest.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    24 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us