cours-iot

Formation: Construire et installer une plateforme Linux pour système embarqué

En ligne, classe virtuelle (à distance), Montréal, Gatineau, Québec, Moncton

Détails du cours

image_pdfimage_print

1er jour

Architecture de Linux

  • Linux
    • Histoire
    • Gestion de version
  • Les diverses licences utilisées par Linux (GPL, LGPL, etc)
  • Distributions Linux
  • Architecture et modularité de Linux

Les chaînes de compilation croisée

  • Chaînes de compilation croisée pré-compilées
  • Outils de génération de chaînes de compilation croisée
    • Crosstool-ng
    • Buildroot
  • Compilation manuelle de chaîne de compilation croisée
  • Exercise:Construction d’une chaîne de compilation croisée avec Crosstool-ng
    Les outils Linux pour l’embarqué

  • Les bootloaders (Uboot, Redboot, barebox)
  • Les librairies adaptées à l’embarqué (eglibc, uClibc)
  • Les IHM adaptées à l’embarqué
  • Busybox
  • Le boot loader U-Boot

  • Introduction à U-Boot
  • Booter la carte à travers U-Boot
    • Booter depuis la NOR
    • Booter depuis la NAND
    • Booter depuis la eMMC
  • Variables d’environnement d’U-Boot
    • Variables définies par l’utilisateur
    • Variables prédéfinies
    • Substitution de variable
  • Le shell U-Boot minimal
    • Ecrire des scripts dans des variables
    • Exécuter des scripts
    • Utiliser des variables dans des scripts : le patron set-script
  • Principales commandes d’U-Boot
  • Booter un OS
    • Accéder aux flashs
    • Accéder aux systèmes de fichier (NFS, FAT, EXTx, JFFS2…)
  • Le shell U-Boot complet
    • Structure du script
    • Instructions de contrôle (if, for…)

    Exercise: Ecrire un script qui configure le réseau et passe cette information au noyau
    Linux

    Exercise: Booter la carte en NFS, en utilisant des images pré-existantes

    Exercise: Ecrire des scripts pour choisir entre booter depuis la flash ou le réseau

    2ème jour

    Créer le noyau Linux embarqué

  • Télécharger un code source stable
    • Obtenir une tarball
    • Utiliser GIT
  • Configurer le noyau
  • Compiler le noyau et ses modules
    • Modules internes aux sources de Linux (in-tree)
    • Modules externes aux sources (out-of-tree)
  • Installer le noyau et les modules
  • Exercise: Configurer et compiler un noyau pour la carte cible

    Le BSP Linux

  • Architecture du BSP Linux
    • Structure générale
    • Le BSP ARM
    • Le système de compilation de Linux
  • Définir et initialiser la carte
    • Programmatiquement (platform, i2c, spi, …)
    • En utilisant le Flattened Device Tree

    Exercise: Créer un BSP minimal pour la carte cible

    Créer un système de fichier racine

  • Paquetages
    • Divers systèmes de compilation de paquetages (autotools, CMake, …)
    • Compiler un paquetage en croisée
  • Les applications tout-en-un
    • Busybox, les utilitaires basiques
    • Dropbear: communications cryptées(ssh)
  • Construire manuellement son système de fichier racine
    • Fichiers de périphérique, programmes et bibliothèques
    • Fichiers de configuration (réseau, udev, …)
    • Installer des modules
    • Chercher et installer les bibliothèques dont on a besoin
    • Tester la cohérence et la complétude du système de fichier

    Exercise: Configurer et compiler Busybox et Dropbear

    Exercise: Créer un système de fichier racine minimal en utilisant Busybox et Dropbear

    Le boot de Linux

  • Paramètres du noyau Linux
  • La séquence de démarrage de Linux
  • Divers systèmes d’initialisation (busybox init, system V init, systemd)
  • Démarrer automatiquement un système embarqué
  • Exercise: Booter Linux en démarrant automatiquement une application utilisateur

    3ème jour

    Systèmes de fichier embarqués

  • Interfaces de stockage
    • Péripéhrique bloc MTD
  • Mémoires flash et MTDs Linux
    • flash NOR
    • flash NAND
    • flash ONENAND
  • Les divers formats de système de fichier pour flash
    • JFFS2, YAFFS2, UBIFS
  • Systèmes de fichier en lecture seule
    • CRAMFS, SQUASHFS
  • Ramdisks et initrd
    • Créer un initramfs
    • Booter à travers un initramfs
  • Choisir les bons formats de système de fichier
  • Flasher le système de fichier
  • Exercise: Construire un système de fichier racine de type initrd

    Buildroot

  • Fonctionnement
    • Configuration de la chaîne de compilation
    • Sélection de paquetages
    • Configuration système (port série, remplissage de /dev, …)
    • Configuration du noyau et du boot-loader
    • Construire une image de système de fichier
  • Adaptation
    • Utiliser une chaîne de compilation pré-compilée
    • Ajouter un patch à un paquetage existant
    • Ajouter un nouveau paquetage
    • Utiliser un squelette de rootfs customisé

    Exercise: Construire un système de fichier racine avec Buildroot

    4ème jour

    Introduction à Yocto

  • Présentation de Yocto
    • Histoire
    • Yocto, Open Embedded et Poky
    • Objetif du projet Yocto
    • Les principaux projets
  • Architecture Yocto
    • Aperçu
    • Recettes et classes
    • Les tâches

    Exercise: Exercise : Utiliser les commandes bitbake pour compiler des packages et des
    images

    Structure des recettes du package Yocto

  • Objectifs du système de compilation
    • Construire des images déployables
    • Couches et priorités de couches
    • Mise en page de l’annuaire
    • layout des dossiers
    • Fichiers de configuration (local, machine et distribution)
    • L’outil bitbake
  • Ajouter un nouveau layer
    • Structure de la couche (Layer)
    • Différents types de couches (Layer)

    Exercise: Ajouter un nouveau layer

    Exercise: Ajouter une nouvelle recette

    5ème jour

    Linux temps-réel

  • solutions temps-réel pour Linux
    • xenomai
    • patch rt preempt
  • architecture de Xenomai
    • co-kernel
    • skins
    • drivers RTDM
  • architecture de Xenomai
    • installer Xenomai
    • cross-compiler une application Xenomai

    Exercise: installer Xenomai 3.x

    Exercise: mesurer les temps de latence

    Exercise: cross-compiler une application Xenomai

    Le BSP U-Boot

  • Portage de U-Boot
    • Structure de code source U-Boot
    • Ajouter une nouvelle carte aux sources U-Boot
    • Drivers U-Boot (RS232, réseau, flash, SD / MMC)
    • Démarrage U-Boot et initialisation de la carte

    Exercise: Création d’un BSP dans U-Boot et configuration du code d’initialisation

    Autre(s) cours dans cette catégorie

    → Formation: Les systèmes embarqués pour l’Internet des Objets (IoT)

    → Formation: Construire et installer une plateforme Linux pour système embarqué

    → Formation Internet des Objets (IoT): Normes, écosystème et applications


Avantages :

  • Un support de cours pour chaque participant
  • Soutien du formateur après la formation
  • Nous vous offrons en session publique:
    • Thé, café
    • Stationnement( seulement dans certaines villes)
    • La connexion internet sans-fil

Préalables :

Des connaissances de base en développement d'applications et/ou d’électronique sont utiles pour suivre cette formation et en tirer un meilleur profit

Objectifs :

Formation: Construire et installer une plateforme Linux pour système embarqué

Montréal :

03/10/2022 au 07/10/2022
24/10/2022 au 28/10/2022
07/11/2022 au 11/11/2022
21/11/2022 au 25/11/2022

Québec :

17/10/2022 au 21/10/2022
24/10/2022 au 28/10/2022
14/11/2022 au 18/11/2022

Gatineau / Ottawa :

24/10/2022 au 28/10/2022
31/10/2022 au 04/11/2022
17/10/2022 au 21/10/2022

Moncton :

31/10/2022 au 04/11/2022

Classe virtuelle (en ligne) :

03/10/2022 au 07/10/2022
24/10/2022 au 28/10/2022
07/11/2022 au 11/11/2022
21/11/2022 au 25/11/2022
Préférentiel*

3190 $

par participant.e

2627 $

Promotion d'été :,
s'applique aux formations à distance,
le paiement doit se faire directement sur notre site
-> M'INSCRIRE MAINTENANT

Durée :5 jour(s), soit 35 heures.
Horaires : 9h-17h, 2 pauses café.

Voir le plan de cours en PDF

Lieux: Montréal, Gatineau / Ottawa , ville de Québec.

Voir les avis clients

Prix régulier: 3754 $

*Le tarif préférentiel s'applique si vous inscrivez au moins deux participants à la même session.

 Tarif Formation: Construire et installer une plateforme Linux pour système embarqué

Interessé par cette formation ?


Recevez cette formation dans votre entreprise

Formation pour entreprise

Soumission gratuite et sans engagement

image du Captcha

Inscription avec paiement par carte de crédit

image Captcha
Image pour illustrer Formation en ligne

Formation en ligne

Vidéos de formations sur les logiciels en bureautique

Mark Plouffe, Gouvernement du Canada/ Government of Canada

“ I want to thank you both for providing my resources some excellent training(Cobol) over the past 3 days. Mamadou, thank you for being so accommodating on such short notice and for sending your facilitator to Gatineau for this customised and personalised training course. We’ll look forward to continuing our partnership for future training needs. “

Maryse Duguay - Analyste fonctionnelle Base de donnée - Montréal

“J’ai grandement apprécié les méthodes d’enseignement du prof. Le fait que nous soyons un petit groupe a grandement facilité les apprentissages. Il s’adapte à son audience et les exercices sont formateurs. Je recommande fortement. “

Martin Côté - Analyste Assurance Qualité - Travailleur autonome – Montréal

“ Ce fut un plaisir de faire affaires avec Doussou Formation. Ce qui fait LA différence est le service personnalisé totalement à l'écoute des participants ainsi que l'adaptation aux besoins de formation. Flexibilité/Adaptabilité/Professionnalisme/Courtoisie. Merci!“