Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

OS libres pour l'IoT - Zephyr

408 views

Published on

Slides du meetup du 22 Novembre 2016 d'Aix Marseille Embedded Linux Meetup consacré aux OS libres pour l'Internet des Objets

Published in: Software
  • Be the first to comment

  • Be the first to like this

OS libres pour l'IoT - Zephyr

  1. 1. www.ciose.fr 1 OS libres pour l’IoTOS libres pour l’IoT ZephyrZephyr C. CharreyreC. Charreyre christian.charreyre@ciose.frchristian.charreyre@ciose.fr http://www.ciose.frhttp://www.ciose.fr https://twitter.com/CIO_SysEmbhttps://twitter.com/CIO_SysEmb http://fr.slideshare.net/charreyrehttp://fr.slideshare.net/charreyre
  2. 2. OS libres pour l'IoT - 22 Nov 2016 www.ciose.fr 2 Licence Attribution-Noncommercial-Share Alike 4.0 International ● You are free: to Share - copy and redistribute the material in any medium or format to Adapt - remix, transform, and build upon the material The licensor cannot revoke these freedoms as long as you follow the license terms. ● Under the following conditions: Attribution — You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use. NonCommercial — You may not use the material for commercial purposes. ShareAlike — If you remix, transform, or build upon the material, you must distribute your contributions under the same license as the original. ● No additional restrictions — You may not apply legal terms or technological measures that legally restrict others from doing anything the license permits. ● License text : http://creativecommons.org/licenses/by-nc-sa/4.0/legalcode
  3. 3. OS libres pour l'IoT - 22 Nov 2016 www.ciose.fr 3 CIO en quelques mots ● Société d'ingénierie en systèmes embarqués : électronique et logiciel ● Au service de nos clients depuis 1990 ● 15 spécialistes en embarqué et temps réel ● Expert en Linux embarqué depuis 2000, OpenEmbedded et Yocto depuis 2008 ● CA annuel : 1 500 000 € ● Siège à Saint-Étienne ● Agence à Marseille ● Agréé CIR
  4. 4. OS libres pour l'IoT - 22 Nov 2016 www.ciose.fr 4 C. Charreyre en quelques mots ● Associé au sein de CIO ● Responsable des technologies Linux embarqué ● Formateur Linux embarqué (avec Captronic et en direct) ● 30 ans dans l'embarqué et le monde Unix / Linux ● Fervent promoteur du logiciel libre ● Membre de Medinsoft – Commission Logiciel Libre
  5. 5. OS libres pour l'IoT - 22 Nov 2016 www.ciose.fr 5 Présentation de Zephyr ● OS temps réel compact, destiné à l’IoT ● Projet collaboratif de la Linux Foundation ● Disponible pour architectures – X86 : Arduino 101, Quark, Galileo, Minnowboard, Qemu x86 – ARM v7-M et v7E-M : Arduino Due, Olimexino, 96B Carbon et Nitrogen, Qemu Cortex M3 … – ARC : Arduino 101 – Nios II : Altera Max10, Qemu Nios II ● Footprint réduit : jusqu’à quelques kO ● Licence Apache 2.0
  6. 6. OS libres pour l'IoT - 22 Nov 2016 www.ciose.fr 6 Fonctionnalités ● Espace d’adressage unique : OS et application linkés ensemble ---> pas d’isolation mémoire ● OS configurable pour compromis features / taille – configuration basée sur Kbuild du kernel Linux ● 2 types de kernel : – Nanokernel < 10k – Microkernel = sur-ensemble du nanokernel, + fonctionnalités ● Services système : – support du multithreading – fibers schedulés en coopératifs + tâches préemptibles sur base priorité fixe – mécanisme d’interruptions, interrompt tâches et fibers – synchronisation de threads par sémaphores binaire, compteur ou mutex – IPC entre threads par message queues et byte streams – allocation mémoire dynamique – gestion de l’énergie
  7. 7. OS libres pour l'IoT - 22 Nov 2016 www.ciose.fr 7 Architecture Crédit Anas Nashif – Zephyr Project : Technical Overview
  8. 8. OS libres pour l'IoT - 22 Nov 2016 www.ciose.fr 8 Services du nano kernel Crédit Anas Nashif – Zephyr Project : Technical Overview
  9. 9. OS libres pour l'IoT - 22 Nov 2016 www.ciose.fr 9 Services du micro kernel Crédit Anas Nashif – Zephyr Project : Technical Overview
  10. 10. OS libres pour l'IoT - 22 Nov 2016 www.ciose.fr 10 Environnement de développement ● SDK disponible pour – Linux – Windows – MacOS ● Le SDK fournit les outils croisés pour toutes les architectures simultanément – gcc – binutils – gdb – libgcc – newlib
  11. 11. OS libres pour l'IoT - 22 Nov 2016 www.ciose.fr 11 Code source Zephyr ● Téléchargé par git clone https://gerrit.zephyrproject.org/r/zephyr zephyr- project ● Organisation code source similaire au kernel Linux (en bien + léger)
  12. 12. OS libres pour l'IoT - 22 Nov 2016 www.ciose.fr 12 Code source Zephyr ● Présence de Makefile et Kconfig similaires au kernel Linux ● Répertoire samples donne les 1ers exemples d’applications
  13. 13. OS libres pour l'IoT - 22 Nov 2016 www.ciose.fr 13 Compilation d’une application ● Définir l’environnement dans son terminal : ● Se positionner dans le répertoire source et effectuer un make en définissant la variable BOARD : ●
  14. 14. OS libres pour l'IoT - 22 Nov 2016 www.ciose.fr 14 Compilation d’une application ● La taille du projet hello-world strippé est de 17k, avec un micro-kernel ● L’application est testée dans qemu à l’aide du Makefile ● Exemple synchronisation : 18 k ● Exemple shell : 11 k ● Exemple net echo_server : 48 k
  15. 15. OS libres pour l'IoT - 22 Nov 2016 www.ciose.fr 15 Démo ● Merci de votre attention ● Place à quelques démo

×